| Date | Description |
|---|---|
| September 25 |
Introduction PP preface, 1-2, 5, 31, 35 |
| September 27 |
Reasoning about code, conditionals Notes from section and lecture |
| September 30 |
Loop proof rules and development Notes from lecture |
| October 2 | Loop developement |
| October 4 | Loop development (concl.) |
| October 7 |
Specifications Specifications notes PP 21, 44 |
| October 9 |
Data abstractions, ADTs, AF, RI AF/RI notes EJ 15, 39, 44 |
| October 11 | Data abstraction examples |
| October 14 |
Abstraction (concl.) Testing PP 34, 43 |
| October 16 | Testing (concl.) |
| October 18 |
Class design EJ 10, 13-15, 40-41, 45, 56; PP 4, 7-8, 26, 33 |
| October 21 |
Design (concl.) Identity and equality, hashCode EJ 8-9, 11-12 |
| October 23 | Identity and equality (concl.) |
| October 25 |
Exceptions and assertions EJ 38, 57-62, 65; PP 22-24 |
| October 28 |
Exceptions (concl.) Interfaces EJ 52 |
| October 30 |
Subtypes and subclasses EJ 16-20, 36 |
| November 1 | Subtypes and subclasses |
| November 4 |
Generics and polymorphism EJ 23-28 |
| November 6 |
Generics (concl.); Events, listeners, and callbacks (start) PP 27, 29 |
| November 13 |
Events and callbacks (concl.); Debugging PP 18 |
| November 15 | Debugging (concl.) |
| November 18 |
Design patterns 1 EJ 1-6 |
| November 20 |
Patterns 1 (concl.) Graphics and GUIs (sample code) |
| November 22 | Graphics (concl.) |
| November 25 | Event-driven GUI programming (sample code) |
| November 27 | Usability |
| December 2 | Patterns 2 Patterns 3 |
| December 4 | System integration |
| December 6 | Demos, wrapup |