Wednesday, January 16, 2008

Tentative weekly course schedule

Week 1

  • overview
  • design with interfaces
  • Java collections
  • test-driven development
  • JUnit
  • reading: online

Week 2

  • update on required software
  • test-driven development
  • JUnit
  • reading: online

Week 3

  • review of methods inherited from Object
  • review of data structures including hashing
  • Java collections
  • Java genericity
  • project discussion
  • reading: Effective Java, items 7-11, 28, 30, 34, 38; online

Week 4

  • quiz 1 (after the lecture)
  • design with composition
  • sorted collections
  • Strategy pattern
  • project discussion
  • reading: Effective Java, items 1-6, 23-27; online

Week 5

  • discussion of quiz 1
  • design patterns
  • Strategy pattern
  • Iterator pattern
  • reading: Effective Java, items 31, 33; online

Week 6

  • quiz 2 (before the lecture)
  • Java enumerations
  • project discussion
  • reading: Effective Java, items 10, 29, 32, 37, 38; online

Week 7

  • quiz 2 discussion
  • project discussion
  • Java inheritance
  • requirements analysis
  • modeling: use cases, class diagrams
  • reading: Effective Java, items 12-18; online

Week 8

  • quiz 3 (after the lecture)
  • project discussion
  • requirements analysis
  • modeling: class diagrams
  • reading: online

Week 9

  • quiz 3 discussion
  • project discussion
  • Java exceptions
  • Composite and Decorator patterns
  • reading: Effective Java, items 39-47; online

Week 10

  • project discussion
  • modeling tools: ArgoUML
  • Composite and Decorator patterns
  • mutability and cloning
  • modeling: use cases, class diagrams, interaction diagrams
  • reading: Effective Java, item 10; online

No comments: