| Syllabus | Updates | Home page |
| Week | Date | Topic | Readings and Presentations | Quizzes (Tuesdays) | Assignments (Thursdays) |
|---|---|---|---|---|---|
| 1 | Tuesday, August 30 Thursday, September 1 |
Class Overview Contracts |
332 Overview Slides
Contract Slides | ||
| 2 | Tuesday, September 6 Thursday, September 8 |
Methods Java Exceptions |
Bloch Chapter 7
Java Slides Bloch Chapter 9 | Guide 1 | Assignment 1 |
| 3 | Tuesday, September 13 Thursday, September 15 |
C++ Primer; C++ Exceptions
JUnit/Tests for Contracts |
Kak 1, 2
Kak 10
JUnit Advanced JUnit www.junit.org | Guide 2 | Assignment 2 |
| 4 | Tuesday, September 20 Thursday, September 22 |
Abstraction Functions Data Type Contracts |
AF/RI Overview
Via example in class. |
Guide 3 | Assignment 3 |
| 5 | Tuesday, September 27 Thursday, September 29 |
Representation Invariants/C# Contracts
More on tests and contracts: TDD |
C# Contract Documentation
The Agile Heresy TDD Overview |
Guide 4 | Assignment 4 |
| 6 | Tuesday, October 4 Thursday, October 6 |
Method Verification More Method Verification; javaDoc |
Method Verification
Oracle javaDoc javaDoc guide JavaDoc Slides |
Guide 5 | Assignment 5 |
| 7 | Tuesday, October 11 Thursday, October 13 |
No Tuesday Class - Columbus Break
Mutability |
Mutability Slides |
Assignment 6 | |
| 8 | Tuesday, October 18 Thursday, October 20 |
More Mutability
C++ Mutability |
In class example.
C++ const Slides |
Guide 6 | Assignment 7 |
| 9 | Tuesday, October 25 Thursday, October 27 |
Java Creation/Destruction Substitution Principle |
Bloch Chapter 2
Substitution Principle |
Guide 7 | Assignment 8 |
| 10 | Tuesday, November 1 Thursday, November 3 |
Substitution and Common Contracts C++ Creation/Destruction |
Bloch Chapter 3
Kak 15 |
Guide 8 | Assignment 9 |
| 11 | Tuesday, November 8 Thursday, November 10 |
More C++ Creation/Destruction Classes and Interfaces |
More Kak 15
Bloch Chapter 4 |
Guide 9 | Assignment 10 |
| 12 | Tuesday, November 15 Thursday, November 17 |
Multiple Inheritance
Java Generics |
Kak 16
Bloch Chapter 5 |
Guide 10 | Assignment 11 |
| 13 | Tuesday, November 22 Thursday, November 24 |
Revisiting Key Topics No Thursday Class - Thanksgiving Break |
Effective C# Items 6, 9
|
Guide 11 | |
| 14 | Tuesday, November 29 Thursday, December 1 |
C++ Generics
Enums and Annotations |
Kak 13
Bloch Chapter 6 |
Guide 12 | Assignment 12 |
| 15 | Tuesday, December 6 Thursday, December 8 |
General Programming Course Wrap Up |
Bloch Chapter 8
Course Review Slides |
Guide 13 | Assignment 13 |
| 16 | Thursday, December 15 10:30AM-1:15PM |
Final Exam |
Lecture slides are prone to modification up to their presentation.
Except for the first class, I expect students to have completed the reading prior to class on the date listed. Quizzes may occasionally take advantage of this expectation.
Homework assignments are due on the date listed. Quizzes are posted, with solutions, following the class in which the quiz is given.
C# material will be integrated as the semester proceeds.