COMS W3157 Advanced Programming

Fall 2018

Course essentials

Supplementary materials

Schedule

Note that the following schedule is tentative. It will be updated as we go.

# Date Topic Note Deadline
Lect 1 T 9/4 Course overview 00 T 9/4: HW0 Part A due
Lect 2 R 9/6 Compiling & linking; Makefile 01 R 9/6: HW0 Part B due
Lect 3 T 9/11 Makefile; Binary number; Data types 02, 03-lab1
Lect 4 R 9/13 Expressions & statements M 9/17: lab1 due
Lect 5 T 9/18 Storage class; Process address space
Lect 6 R 9/20 Pointers & arrays 04, 05
Lect 7 T 9/25 Pointers & arrays 06-lab2
Lect 8 R 9/27 Pointers & arrays M 10/1: lab2 due
Lect 9 T 10/2 Function pointer; Struct 07, 08-lab3
Lect 10 R 10/4 Linked list; Standard I/O; Redirection 09
T 10/9 Midterm exam #1
Lect 11 R 10/11 File I/O
Lect 12 T 10/16 File I/O; Lab 4 demo; UNIX file permissions 10-lab4, 11 T 10/16: lab3 due
Lect 13 R 10/18 Creating processes using fork & exec
Sa 10/20 3157 Hackathon!
Lect 14 T 10/23 Intro to TCP/IP networking 12, 13-lab5 W 10/24: lab4 due
Lect 15 R 10/25 Sockets API 14
Lect 16 T 10/30 Sockets API; HTTP 15-lab6
Lect 17 R 11/1 HTTP; Intro to C++ 16-lab7, 17 R 11/1: lab5 due
T 11/6 No class - Election day
Lect 18 R 11/8 Basic-4 in C++; Lab 7 demo F 11/9: lab6 due
T 11/13 Midterm exam #2
Lect 19 R 11/15 MyString class 18, 19-lab8 Su 11/18: lab7 due
Lect 20 T 11/20 MyString class; Software architecture 20, 21-lab9
R 11/22 No class - Thanksgiving day
Lect 21 T 11/27 Templates & STL 22
Lect 22 R 11/29 Templates & STL 23-lab10 M 12/3: lab9 due
Lect 23 T 12/4 Smart pointer 24
Lect 24 R 12/6 Course wrap-up & review 25 M 12/10: lab10 due
T 12/18 Sec 002 final: 4:20–6:20pm, Tue Dec 18, the usual classroom
R 12/20 Sec 001 final: 4:20–6:20pm, Thu Dec 20, the usual classroom