Lecture Topics

DateDescription
March 31 Intro and C review
slides, code
April 2 Arrays and memory
slides, code
April 4 Pointers, pointers, pointers, ...
slides, code
April 7 malloc, free, structs, typedef
slides, code
April 9 Data structures and modules
Modules: slides, code
April 11 Final C details; Makefiles
C: slides, code; make: slides code
April 14 File I/O & System calls (start)
syscalls & I/O: slides, code
April 16 File I/O & System calls (cont.); Posix I/O
posix: slides, code
April 18 System calls (concl.); C++ intro (start); hw2 demo
C++: slides, code
April 21 C++ intro (concl.)
April 23 C++ references, const, classes, etc.
slides, code
April 25 C++ constructor insanity
slides, code
April 28 C++ class details, heap
slides, code
April 30 C++ templates; STL (start)
templates: slides, code, stl: slides; code
May 2 STL (concl.)
May 5 hw3 overview & demo; C++ Inheritance (start)
slides, code
May 7 C++ Inheritance (concl.); C++ casts
slides, code
May 12 Smart pointers (start)
slides, code
May 14 Smart pointers (concl.)
May 16 Networking intro
slides
May 19 Network programming - DNS & client side
slides, code
May 21 Network programming - client side (concl.); server side
client: slides, code, server: slides, code
May 23 HTTP; hw4 demo
slides demo
May 28 Concurrency - intro
slides
May 30 Concurrency - threads
slides, code
June 2 Concurrency - processes
processes: slides, code
June 4 No lecture - extra time to finish projects
June 6 Course wrapup
slides