Date
|
Lecture
|
Lab
|
Assignment Due
|
Mon. 1/08/07 |
Lec01:
Administrivia, getting Java and DrJava |
|
|
Tues.. 1/09/07 |
|
Lab01: Java Syntax Primer, Using DrJava |
|
Wed. 1/10/07 |
Lec02: Data Abstraction using Primitives |
|
Fri. 1/12/07 |
Lec03: Functional Abstraction using Methods |
|
|
|
|
|
|
Mon. 1/15/07 |
MLK Holiday. No Classes! |
|
|
Tues..
1/16/07 |
|
Lab02: Unit Tests, Writing Classes and Making Interacting Objects |
|
Wed.1/17/07 |
Lec04: Abstraction Using Objects and Classes |
|
Fri. 1/19/07 |
|
|
Blanket Extension until Monday,
1/22/07 due to University closure |
|
|
|
|
Mon. 1/22/07 |
Lec05: Object Relationships and UML diagrams |
|
HW01: Writing simple classes |
Tues.. 1/23/07 |
|
Lab03: Java Syntax; Using the Calendar Class; StructureBuilder |
|
Wed. 1/24/07 |
Lec06: Union Design Pattern and Polymorphism |
|
Fri. 1/26/07 |
Lec07: Union Design Pattern and Polymorphism. cont. |
|
HW02: Unit Tests and Polymorphism |
|
|
|
|
Mon. 1/29/07 |
Lec08: Polymorphism in Action: Ballworld |
|
|
Tues.. 1/30/07 |
|
Lab04: Static vs. non-static; Singleton Pattern; Strategy Pattern |
|
Wed. 1/31/07 |
Lec09: Ballworld continued. |
|
Fri. 2/02/07 |
Lec10: Inheritance vs. composition in Ballworld. |
|
HW03:
More on writing and testing classes and polymorphism |
|
|
|
|
Mon. 2/05/07 |
Lec11: Dynamically changing and dynamically composed behaviors in
Ballworld. |
|
|
Tues..
2/06/07 |
|
Lab05: Lists and Their Algorithms |
|
Wed. 2/07/07 |
Lec12: Lists and List Processing: The Composite Design Pattern |
|
Fri. 2/09/07 |
Lec13: Lists and List Processing: The Interpreter Pattern |
|
Blanket extension on HW04! |
|
|
|
|
Mon. 2/12/07 |
Lec14: Recursion |
|
|
Tues.. 2/13/07 |
|
Lab06: Lists and Their Algorithms cont. |
|
Wed. 2/14/07 |
Lec15: Review |
HW04: Singletons, even more polymorphism and
strategies |
Fri.
2/16/07 |
Lec16: Review |
|
|
|
|
|
|
Mon. 2/19/07 |
Lec17: Tail Recursion; To Cook or Not to Cook |
|
7:00 PM - 9:30 PM EXAM
1 in DH1046 |
Tues.. 2/20/07 |
|
Lab07: Visitors |
|
Wed. 2/21/07 |
Lec18: The Visitor Design Pattern |
HW05 now due on Friday! |
Fri. 2/23/07 |
Lec19: More Visitors |
|
HW05: Forward Accumulation and Higher-Order
Functions |
|
|
|
|
Mon. 2/26/07 |
Lec20: The Abstract Factory Design Pattern |
|
|
Tues.. 2/27/07 |
|
Lab08:Factories and Inner Classes |
|
Wed. 3/28/07 |
Lec21:
Exam 1 recap. & The List Component Framework; Examples of List Visitors
Using Factory |
|
Fri. 3/02/07 |
Lec22: Inner Classes |
|
HW06: Visitor Algorithms on an Immutable List |
|
|
|
|
3/05/07-3/09/07 |
Spring Break, No
Classes! |
|
|
|
|
Mon. 3/12/07 |
Lec23: More Inner Classes |
|
|
Tues.. 3/13/07 |
|
Lab09: Factories
and Inner Classes (cont.) |
|
Wed. 3/14/07 |
Lec24: Examples of Visitors with Inner Classes; Java GUI Programming |
|
Fri. 3/16/07 |
Lec25: Java GUI Programming, cont., Event
handlers in Java GUIs |
|
HW07: Visitors using Factories with Nested or
Anonymous Inner Classes |
|
|
|
|
Mon. 3/19/07 |
Lec26: Event handlers in Java GUIs, cont. |
|
|
Tues.. 3/20/07 |
|
Lab10:
GUI programming |
|
Wed. 3/21/07 |
Lec27: State design pattern; Mutable Lists |
|
Fri. 3/23/07 |
Lec28: LRStruct implementation |
|
HW08: Java GUI programming with Factories and
Anonymous Inner Classes |
|
|
|
|
Mon. 3/26/07 |
Lec29: LRStruct visitors |
|
|
Tues.. 3/27/07 |
|
Lab11: Mutable List Processing: Exercises on
LRStruct |
|
Wed. 3/28/07 |
Lec30:
LRStruct visitors, continued. |
|
Fri. 3/30/07 |
|
|
HW09: Mutable List
Processing - Exercises on LRStruct |
|
|
|
|
Mon. 4/2/07 |
Lec32: Review
Lec33: Finite State Machine and
the State Pattern: The Cheap Calculator |
|
|
Tues. 4/3/07 |
|
Lab12:
Finite State Machine and the State Pattern: The Cheap Calculator
|
EXAM #2 ON-LINE 7:00
PM-11:00 PM |
Wed. 4/4/07 |
Lec31: Restricted Access Containers |
|
Fri. 4/6/07 |
Spring
Recess. No Classes! |
|
|
|
|
Mon. 4/09/07 |
Lec 34: Ordering Object and
Priority Queue |
|
|
Tues.. 4/10/07 |
|
Lab13:
Binary Trees Algorithms |
|
Wed. 4/11/07 |
Lec35: Binary Tree Structure
and BiTree Visitors |
HW10: Finite State
Machine and The State Design Pattern
New Due Date! |
Fri. 4/13/07 |
Lec36: Binary Search Tree,
Final project
kick-off |
|
|
|
|
|
|
Mon. 4/16/07 |
Lec37: Exam recap; Javadocs |
|
HW11: Binary Tree Processing Exercises |
Tues.. 4/17/07 |
|
Lab14:
Start of BallWar, the Final Project |
|
Wed. 4/18/07 |
Lec38: Arrays and Array Processing |
|
Fri. 4/20/07 |
Lec39:
Arrays continued, Design Patterns for Sorting |
|
|
|
|
|
|
Mon. 4/23/07 |
Lec40: Java Thread and Animation Basics - Command Pattern and Decorator
Pattern |
|
BallWar project description
HW12: Stacks and The Cheap Postfix Calculator |
Tues.. 4/24/07 |
|
Lab15: Writing Loops and Processing Arrays |
|
Wed. 4/25/07 |
Lec41: Last day of class!
Exam 3 prep, Wrap-up and course evaluations. Please be there! |
Extra Credit Assignment Due |
|
|
|
|
Mon. 4/30/07 |
|
|
Exam 3 available (evening) |
|
|
|
|
Mon.
5/07/07 |
|
|
Final Project: BallWar
and Exam 3
(due 12:00PM) |
|
|
|
|