Schedule

Class meets Monday at 2:30-4:20 and Wednesday at 2:30-3:20 in SRYE 1002.

The schedule is subject to change.

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