Schedule

Assignments for the homework are only accessible via eAssignment.

Time Block Lectures/Exercises Covered Materials Integrated Exercises Student Talks and Essays Homework
Jan 2, 2006 1. Getting Started
2. History of Programming
Getting Started (PDF)
History of Programming (PDF)
     
Jan 5, 2006 3. Design Principles Design Principles (PDF)
Communication and eAssignment (PDF)
Was ist gutes Design? (PDF) Essay 1 (TGZ)
Submissions (PDF, PDF)
Homework 1: Arithmetic Expressions
Slides (PDF)
Jan 9, 2006 3. Design Principles (continued)
4. Design Patterns: An Introduction
Design Principles (PDF)
Design Patterns Introduction (PDF)
     
Jan 12, 2006 4. Design Patterns: An Introduction (continued)
5. Design Patterns: Decorator
Design Patterns Introduction (PDF)
Design Patterns Decorator (PDF)
  Essay 2 (TGZ)
Submissions (PDF, PDF, PDF)
 
Jan 16, 2006 6. Design Patterns: Visitor Design Patterns Visitor (PDF)   Creational Patterns (PDF) Discussion of Homework 1 (PDF)
Homework 2 is available in the eAssignment environment
Jan 19, 2006 7. Architectural Patterns
8. Refactoring
Architectural Patterns (PDF)
Refactoring (PDF)
  Essay 3 (PDF)
Submissions (PDF, PDF, PDF)
 
Jan 23, 2006 9. Frameworks Frameworks (PDF)   Anti Patterns (PDF) Discussion of Homework 2 (PDF)
Homework 3 is available in the eAssignment environment. The eAssignment project includes a sample solution for homework 2. You can also copy your own solution of homework 2 into the project for homework 3 and use this one
Jan 26, 2006 10. Aspect-Oriented Programming Aspect-Oriented Programming (PDF)   Essay 4 (PDF)
Submissions (PDF, PDF)
 
Jan 30, 2006 AspectJ Lab Lab Slides (PDF) Eclipse Installation for Linux (TGZ, 97.2 MB), Mac OS X (TGZ, 97.4 MB), Windows (ZIP, 99.6 MB)   Discussion of Homework 3 (PDF)
Homework 4 is available in the eAssignment environment.
Feb 2, 2006 CaesarJ Lab Lab Slides
An Overview of CaesarJ
Eclipse Installation for Linux, Windows, Mac OS X
installation notes
   
Feb 6, 2006 11. Heuristics
Multidispatch Lab
Heuristics
Lab Slides
Install MultiJava. You need Java 1.4 to run MultiJava. Download the source code for the lab. Solutions to the lab. Essay 5: summarize the provided paper; due Feb. 13 (ZIP)
Submissions (PDF)
Discussion of Homework 4 (PDF)