COMS W3157 Advanced Programming

Fall 2019

Course essentials

Supplementary materials

Schedule

Note that lecture schedule and all due dates are subject to change.

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