Date | Description |
---|---|
March 28 |
Introduction; read PP preface, 1-2, 5, 31, 35 slides |
March 30 |
Reasoning about code I slides, notes |
April 1 |
Reasoning about code II - loops slides, notes |
April 4 | loop development |
April 6 |
Specifications; PP 21, 44 slides, related notes |
April 8 | Specifications |
April 11 |
Specs. (concl.); Data abstractions (ADTs); EJ 15, 39, 44 slides, related notes (same as last time) |
April 13 |
ADTs (concl.); Representation invariants (RI) slides, related notes√ |
April 15 |
RIs (concl.); Abstraction Functions (AF) slides, related notes (same as last time) |
April 18 |
Testing (start) PP 34, 43 slides |
April 20 | Testing (concl.) |
April 22 |
Module design and general style notes; EJ 10, 13-15, 40-41, 45, 46, 50, 56; PP 4, 7-8, 26, 33 slides |
April 25 |
Design (concl.); Identity & equality, hashCode; EJ 8-9, 11-12 slides |
April 27 | Equality (cont.) |
April 29 | overloading/overriding review; hashCode (wrapup) |
May 2 |
Exceptions & assertions; EJ 38, 57-62, 65; PP 22-24 slides |
May 4 |
Exceptions (concl.); Subtypes and subclasses (start); EJ 16-20, 36, 52 slides |
May 6 | Subtypes and subclasses (concl.) |
May 9 |
Generics (start); EJ 23-28 slides |
May 11 | Generics |
May 16 |
Generics (concl.); Events, listeners, & callbacks (start); PP 27, 29 slides |
May 18 |
Events (concl.) Debugging; PP 18 slides |
May 20 | Debugging (concl.) |
May 23 |
Graphics and GUIs slides code |
May 25 |
Event-driven GUI programming slides code |
May 27 |
Design patterns 1; EJ 1-6 slides |
June 1 |
Design patterns 2 slides |
June 3 |
Demos, wrapup slides |