COMS W3157 Advanced Programming

Spring 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 1/16 Course overview 00 T 1/16: HW0 Part A due
Lect 2 R 1/18 Compiling & linking; Makefile 01 R 1/18: HW0 Part B due
Lect 3 T 1/23 Makefile; Binary number; Data types 02, 03-lab1
Lect 4 R 1/25 Expressions & statements
Lect 5 T 1/30 Storage class; Process address space
Lect 6 R 2/1 Pointers & arrays 04, 05, 06-lab2 F 2/2: lab1 due
Lect 7 T 2/6 Pointers & arrays
Lect 8 R 2/8 Pointers & arrays
Lect 9 T 2/13 Function pointer; Struct 07, 08-lab3 T 2/13: lab2 due
Lect 10 R 2/15 Linked list; Standard I/O; Redirection 09
T 2/20 Midterm exam #1
R 2/22 Class canceled - Instructor attending conference
Lect 11 T 2/27 File I/O T 2/27: lab3 due
Lect 12 R 3/1 UNIX overview; Creating processes using fork & exec 10-lab4, 11
F 3/2 3157 Hackathon!
Lect 13 T 3/6 Intro to TCP/IP networking 12, 13-lab5
Lect 14 R 3/8 Lab 5 overview: fork & exec revisited; Endianness
T 3/13 No class - Spring break
R 3/15 No class - Spring break
Lect 15 T 3/20 Sockets API 14
Lect 16 R 3/22 Sockets API; HTTP 15-lab6
T 3/27 Midterm exam #2
Lect 17 R 3/29 HTTP; Intro to C++ 16-lab7, 17
Lect 18 T 4/3 Basic–4 in C++; Lab 7 demo; Software architecture 20
Lect 19 R 4/5 Basic–4 in C++ 19-lab8
Lect 20 T 4/10 MyString class 18
Lect 21 R 4/12 MyString class 21-lab9
Lect 22 T 4/17 Templates & STL 22
Lect 23 R 4/19 Templates & STL 23-lab10
Lect 24 T 4/24 Smart pointer 24
Lect 25 R 4/26 Course wrap-up & review 25
T 5/8 Final exam: 4:20–6:20pm, Room TBA