This is an old revision of the document!
Table of Contents
Course Outline
Since the two sections will be slightly out of sync throughout the term, the following lists the topics to be discussed with only approximate timing:
Week 1
Introduction - Administrivia
Week 2
Classes - Objects
Readings: Chapters 7-8
Week 3
Genericity - Design by Contract
Readings: Chapter 10 - 11
Week 4
Test Driven Design - Tuples and Agents
Week 5
Contracting with math libraries
Week 6
Inheritance
Readings: Chapters 14
Design Patterns: Template Method, State
Midterm
Week 7
Design pattern: Multi-panel interactive systems
Readings: Chapter 20
Week 8
Multiple Inheritance - Inheritance Techniques
Readings: Chapters 15-16
Week 9
How to find the classes - Using Inheritance Well
Readings: Chapters 22,24
Week 10
Design Patterns: Adapter, Composite
Week 11
Design Patterns: Decorator, Command
Week 12
Design Patterns: Observer, Visitor