Schedule

Class meets Monday at 10:30-12:20 and Wednesday at 10:30-11:20 in SRYE2016.

The schedule is subject to change.

Week Date Materials Due Extra
1 Sep 4 Introduction
A taste of modern C++
What a programmer does
C++ Seasoning
Embracing Algorithms
2 Sep 9 A taste of modern C++
Build Systems
Last day to drop (tomorrow)
Sep 11 Build Systems
Complexity
Exercise 0
Background Survey
3 Sep 16 Complexity
Agile?
Exercise 1
Sep 18 Your Project
Term Project Discussion
A Tour of Architecture
(R) Pragmatic Programmer 1, 2, 8
4 Sep 23 A Tour of Architecture
Object Oriented Programming
In class OOP example
Exercise 2
Sep 25 Team contracts due
Object Oriented Programming
In class OOP example
5 Sep 30 ALL CLASSES CANCELLED
Oct 2 Unit Testing (R) Pragmatic Programmer 3, 4, 9
Exercise 3 (tomorrow)
6 Oct 7 Generic Programming & Templates
Oct 9 Traits Demo
Generic Programming & Templates
Composition, Polymorphism, and Types
1.1, 1.2, & 3 of
On Understanding Types, Data Abstraction, and Polymorphism
(The whole thing is classic.)
7 Oct 15 TUESDAY CLASS
MIDTERM
Exercise 4
Oct 16 Design Patterns (R) Pragmatic Programmer 5, 6, 7
Peer and self review
Iteration 1
8 Oct 21 Visitors
Visitor example
Oct 23 Antipatterns from Iteration 1
9 Oct 28 Thinking in Sequences:
find, filter, map, & reduce
Exercise 5
Oct 30 Code Review 1
10 Nov 4 Designing APIs for Simplicity
& Preventing Errors
Nov 6 Code Review 2 Iteration 2
Peer and self review
11 Nov 11 ALL CLASSES CANCELLED Exercise 6 (tomorrow)
Nov 13 Individual team meetings
12 Nov 18 Thinking about correctness
Nov 20 Code Review 3
13 Nov 25 Designing for security Exercise 7
Nov 27 Code Review 4
14 Dec 2 All questions anwered
Epilogue
Iteration 3 (!)
Peer and self review