Lectures
Fall 2006 lectures (for reference; Spring 2008 will be changed in several ways)
- 1-16: Introduction
- 1-18: Java for the experienced
- 1-23: Arrays and memory
- 1-25: Juggling object references
- 1-28: Abstraction, interfaces and subtyping
- 1-30: Static data and methods, factory classes
- 2-01: Nested classes, access control
- 2-04: Array iteration patterns
- 2-06: Extensible arrays and Sequences
- 2-08: Sequences and graphs
- 2-11: Contracts, conditions and exception
- 2-13 and 2-15: Overloading and I/O
- 2-18: Midterm review
- 2-20: First midterm
- 2-22: Formatted data, Iterative interaction
- 2-25: Collections, Lists, Generics
- 2-27 and 2-29: Sets, maps, relations
- 3-03: Linked Lists
- 3-05: Iterators
- 3-07: Generic Collection Algorithms
- 3-17: Event-based programming and GUIs
- 3-19: GUI Examples
- 3-21: Concurrency
- 3-24: Tree-structured data and Recursion
- 3-26: Trees: traversal and selection
- 3-28: Trees: selection and navigation
- 3-31: Generative recursion: binary search and tail recursion
- 4-02: Midterm review
- 4-04: Second midterm
- 4-07: Generative recursion: merge sort
- 4-09: Binary Search trees
- 4-14: Technical writing
- 4-16: Elementary python
- 4-18: Python: Generators
- 4-21: Python: Classes and Inheritance
- 4-25: Server Status