CSE 331 Winter 2013
Lecture Topics

Subscribe to this calendar (google, iCal, etc.)

Related readings: EJ n = Effective Java, 2nd ed. Sec. n ; PP n = Pragmatic Programmer Sec. n

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