| Date | Assignment | Notes | Reading | Subject |
|---|---|---|---|---|
| Jan 23 | Videos and lecture notes | administrivia; expressions (numbers, Strings); variable-definition statements | ||
| Jan 23 | image expressions, image variables | |||
| Jan 25 | Errors and syntax diagrams; more work with images | |||
| Jan 28 | A cheesy but informative video about "Pair Programming", in MOV or WMV format. | The Joys (and Woes) of the Craft of Programming | Writing methods | |
| Jan 28 | practice writing methods; methods involving numbers | |||
| Jan 30 | Syntax rules for methods; Writing methods with multiple parameters | |||
| Jan 30 | practice writing methods | |||
| Feb 01 | HW1 | Video on testing | Analogy to English; writing test cases | |
| Feb 04 | A design recipe for writing methods | |||
| Feb 04 | geometric primitives; Colors and Posns | |||
| Feb 05 | Last day to add classes | |||
| Feb 06 | Practice writing methods with Colors and design recipe | |||
| Feb 06 | Practice writing methods with Colors and design recipe | |||
| Feb 08 | More about Strings; console I/O | |||
| Feb 11 | HW1 due | Writing animations; model vs. view | ||
| Feb 11 | practice writing animations | |||
| Feb 13 | A Recipe for Animations; writing mouse handlers | |||
| Feb 13 | More practice writing animations | |||
| Feb 15 | HW2 | Fun with Colors; pixel manipulation | ||
| Feb 18 | booleans, boolean-valued methods, and how to test them | |||
| Feb 18 | writing boolean-valued methods | |||
| Feb 20 | Last day to drop classes | |||
| Feb 20 | Conditional statements and expressions | |||
| Feb 20 | Practice writing methods and animations using conditionals | |||
| Feb 22 | HW3 | Review writing animations; Stopping an animation | ||
| Feb 25 | HW2 due | Defining new classes to store multiple data; constructors | ||
| Feb 25 | practice writing data classes and constructors | |||
| Feb 27 | Methods in and on user-defined classes | |||
| Feb 27 | practice writing such methods | |||
| Mar 01 | Designing a class; equality on user-defined classes | |||
| Mar 04 | Animations using user-defined classes | |||
| Mar 04 | Practice writing such animations | |||
| Mar 06 | HW4 | Class composition | ||
| Mar 06 | practice writing methods for composed classes | |||
| Mar 08 | HW3 due | Catch up and review | ||
| 3/11-3/17 | Spring break | |||
| Mar 18 | Class polymorphism | |||
| Mar 18 | practice writing methods for polymorphic classes | |||
| Mar 20 | Polymorphism and inheritance | |||
| Mar 20 | Practice with polymorphism and inheritance | |||
| Mar 22 | Help with homework 4; discuss polymorphism and inheritance | |||
| Mar 25 | Help with homework 4 | |||
| Mar 25 | Lab cancelled due to illness | |||
| Mar 27 | Last day to withdraw from classes | |||
| Mar 27 | Definition by parts, definition by choices, and lists | |||
| Mar 27 | practice writing examples of lists and methods on them | |||
| Mar 29 | Variable names and readability; inventories with values; writing methods on lists | |||
| Apr 01 | HW5 | Methods that return lists | ||
| Apr 01 | practice writing methods returning lists | |||
| Apr 02 | HW4 due | |||
| Apr 03 | Helper methods involving lists; sorting | |||
| Apr 03 | Practice writing complex methods on lists | |||
| Apr 05 | Finish sorting; general lists | |||
| Apr 08 | Operating on lists from the outside: Traversal | |||
| Apr 08 | practice doing this | |||
| Apr 10 | Research day: no classes | |||
| Apr 12 | Help with homework 5 | |||
| Apr 15 | Strings as a recursive data type | |||
| Apr 15 | Practice writing methods on Strings | |||
| Apr 17 | Whole numbers as a recursive data type | |||
| Apr 17 | Practice writing methods on whole numbers | |||
| Apr 19 | HW5 due; HW6 | Input streams as a recursive data type | ||
| Apr 22 | Accumulative recursion | |||
| Apr 22 | practice writing methods using accumulative recursion | |||
| Apr 24 | From accumulative recursion to while-loops | |||
| Apr 24 | practice writing loops | |||
| Apr 26 | for-loops | |||
| Apr 29 | HW7 | ArrayLists, for-loops and "for-each" loops | ||
| Apr 29 | practice iterating over various data structures | |||
| May 01 | HW6 due | Mutable classes and setters; equality and testing | ||
| May 01 | Practice with this | |||
| May 03 | Encapsulating state | |||
| May 06 | Practice, catch up, and review | |||
| May 06 | Practice, catch up, and review | |||
| May 08 | HW7 due | Practice final exam | ||
| May 08 | catch up and review | |||
| May 13 | final exam, 3:30-5:30: in-class component? | |||
| May 15 | final exam, 8:00-10:00: take-home final due? | |||