June 21 |
Motivation; Reasoning about Straight-line Code EJ: preface; PP: preface, 1-3, 5, 6
|
June 23 |
Reasoning about Conditionals and Loops PP 38
|
June 26 |
Reasoning Wrap-up
|
June 28 |
Specifications PP 7, 23
|
June 30 |
ADTs; Representation Invariants (RI)
|
July 3 |
Rep Exposure; Abstraction Functions (AFs) Code Examples
|
July 5 |
Testing
|
July 7 |
More Testing; Modular Design Materials EJ 49, 50, 17, 52; PP 41
|
July 10 |
Modular Design; Style
|
July 12 |
Software Tools
|
July 14 |
Equality and Hashcodes EJ 10, 11
|
July 17 |
Exceptions PP 25; EJ 69, 70, 73
|
July 19 |
Subtypes EJ 40, 18, 19
|
July 21 |
More Subtypes; Ethics
|
July 24 |
Generics EJ 28, 30
|
July 26 |
More Generics; Callbacks
|
July 28 |
Event-driven Design; HTML; TypeScript Code Examples, TS Introduction
|
July 31 |
Intro to React Code Examples
|
August 2 |
More React
|
August 4 |
Even More React; Debugging
|
August 7 |
Design Patterns
|
August 9 |
HW9 and Servers Code Examples
|
August 11 |
More Design Patterns
|
August 14 |
System Stuff
|
August 16 |
Ethics + Accessibility (half lecture)
|
August 18 |
Course Wrap-up
|