Date | Description |
---|---|
January 5 |
Introduction PP pref., 1-2, 5, 31, 35 slides |
January 7 |
Reasoning about code I notes slides |
January 9 |
Reasoning about code II - loops notes slides |
January 12 | Loop development |
January 14 |
Loops (concl.) Specifications: PP 21, 44 slides related notes |
January 16 | Specifications (concl.) |
January 21 |
Data abstractions (ADTs): EJ 15, 39, 44 Representation invariants (RI) (start) ADT slides RI slides related notes |
January 23 | Rep. Invariants (RI) (concl.) |
January 26 |
Abstraction Functions (AF); Testing (start): PP 34, 43 AF slides AF notes testing slides |
January 28 | Testing |
January 30 |
Testing (concl.); Module design and general style: EJ 10, 13-15, 40-41, 45, 56; PP 4, 7-8, 26, 33 slides |
February 2 | Design (concl); Identity & Equality (start) |
February 4 |
Identity and equality, hashCode: EJ 8-9, 11-12 slides |
February 6 |
hashCode (concl.); Exceptions and assertions: EJ 38, 57-62, 65; PP 22-24 slides |
February 9 | Exceptions/assertions (concl.) |
February 11 |
Subtypes and subclasses: EJ 16-20, 36, 52 slides |
February 13 |
Subtyping (concl.); Generics and polymorphism EJ 23-28 slides |
February 20 | Generics (concl.); |
February 23 |
Generics (concl.); Events, listeners, and callbacks: PP 27, 29 slides |
February 25 |
Events (concl.) Debugging: PP 18 slides |
February 27 |
Debugging (concl.) Graphics and GUIs (start) slides (code) |
March 2 | Graphics |
March 4 |
Event-driven GUI programming slides (sample code) |
March 6 |
Design patterns I EJ 1-6 slides |
March 9 |
Design patterns II slides |
March 11 |
System integration slides |
March 13 |
Demos & wrapup slides |