This schedule should be regarded as a tentative plan that will likely change during the course of the semester.
| Week | Class | Lab | Date | Day | Topic | BlueJ | HW out | 
| 1 | 1,A,B,C,D | ||||||
| L1 | Jan 23 | M | BlueJ, Programming skills assessment | HW1 | |||
| C1 | Jan 24 | T | Administrative, OOP Intro. | ||||
| C2 | Jan 26 | Th | Objects, methods, classes | ||||
| 2 | 2 | ||||||
| L2 | Jan 30 | M | Creating a class: heater exercise | HW2 | |||
| C3 | Jan 31 | T | |||||
| C4 | Feb 2 | Th | Object interaction, abstraction, modularization | ||||
| Feb 3 | F | Add/drop deadline | |||||
| 3 | 3 | ||||||
| L3 | Feb 6 | M | Creating a class: bar graph | HW3 | |||
| C5 | Feb 7 | T | Grouping objects: music organizer example | ||||
| C6 | Feb 9 | Th | Grouping objects: iteration | ||||
| 4 | 4 | ||||||
| L4 | Feb 13 | M | Using a debugger: tic-tac-toe | HW4 | |||
| C7 | Feb 14 | T | Grouping objects: auction example, arrays | ||||
| C8 | Feb 16 | Th | Library classes: tech-support system | ||||
| 5 | 5 | ||||||
| L5 | Feb 20 | M | Regular expressions | HW5 | |||
| C9 | Feb 21 | T | Library classes: documentation, information hiding | ||||
| C10 | Feb 23 | Th | Animation: bouncing ball example | CD-ROM | |||
| 6 | 6 | ||||||
| L6 | Feb 27 | M | Simple Animation: Bouncing balls | HW6 | |||
| C11 | Feb 28 | T | Designing classes: cohesion, coupling, refactoring, Zuul | ||||
| C12 | Mar 2 | Th | Zuul: responsibility-driven design | ||||
| 7 | |||||||
| L7 | Mar 6 | M | Designing Classes: Zuul | HW7 | |||
| C13 | Mar 7 | T | Program testing | ||||
| C14 | Mar 9 | Th | Program testing, Recursion | ||||
| SR | |||||||
| Mar 13 | M | SPRING RECESS -- NO CLASS | |||||
| Mar 14 | T | SPRING RECESS -- NO CLASS | |||||
| Mar 16 | Th | SPRING RECESS -- NO CLASS | |||||
| 8 | 7 | ||||||
| L8 | Mar 20 | M | Program testing | (no HW8) | |||
| C15 | Mar 21 | T | Recursion | ||||
| C16 | Mar 23 | Th | Subclasses, inheritance, polymorphism | ||||
| Mar 24 | F | Last day to withdraw | |||||
| 9 | 8 | ||||||
| L9 | Mar 27 | M | MIDTERM EXAM | HW9 | |||
| C17 | Mar 28 | T | Dynamic method lookup, types | ||||
| C18 | Mar 30 | Th | Simulations: Foxes and Rabbits | ||||
| 10 | 9 | ||||||
| L10 | Apr 3 | M | Subclasses, inheritance in SpaceWar | HW10 | |||
| C19 | Apr 4 | T | Abstract classes, interfaces | ||||
| C20 | Apr 6 | Th | Graphical User Interfaces | ||||
| 11 | 10 | ||||||
| L11 | Apr 10 | M | Subclasses, Inheritance, Interfaces in Foxes and Rabbits | HW11 | |||
| C21 | Apr 11 | T | Graphical user interfaces | ||||
| C22 | Apr 13 | Th | |||||
| 12 | 11 | ||||||
| L12 | Apr 17 | M | Flipping Bits GUI | HW12 | |||
| C23 | Apr 18 | T | Exception handling | ||||
| C24 | Apr 20 | Th | Character encodings, streams, readers | ||||
| 13 | 12 | ||||||
| L13 | Apr 24 | M | Exceptions: Web browser | HW13 | |||
| C25 | Apr 25 | T | Designing applications | ||||
| C26 | Apr 27 | Th | |||||
| 14 | 13 | ||||||
| L14 | May 1 | M | Class design, CRC cards | ||||
| C27 | May 2 | T | Design patterns | ||||
| C28 | May 4 | Th | Design patterns | ||||
| F | May 10 | W | FINAL EXAM 5:30PM-8:00PM |