Note: I haven't finished planning the schedule of topics for the Java portion of the course, and some things in this schedule may actually take more or less time than I've estimated. I'll update this schedule as I work things out.
Date | Assignment | Reading | Notes | Subject | |
---|---|---|---|---|---|
01/25/06 | lecture: Administrivia, expressions, syntax & box diagrams | ||||
01/25/06 | lab: DrScheme, the Stepper, defining variables and functions | ||||
01/27/06 | HW1 | HTDP through chap. 3 | lecture: Defining functions; the design recipe; data types and English | ||
01/30/06 | lecture: multi-parameter functions; re-using functions; error recording | ||||
01/30/06 | lab: Teachpacks; practice with data types and PSP forms | ||||
02/01/06 | HTDP chap. 3 and chap. 4 | moved to BlackBoard | lecture: Auxiliary functions and conditionals | ||
02/01/06 | Help Desk "image.ss"; tiles teachpack |
lab: Strings; images; practice with conditionals | |||
02/03/06 | HTDP chap. 5 | lecture: Writing multi-function programs | |||
02/06/06 | HW1 due | Help Desk "world.ss" | lecture: Animations and event-handling | ||
02/06/06 | lab: Practice with these | ||||
02/07/06 | Last day to add classes | ||||
02/08/06 | Writing an animation from scratch | ||||
02/08/06 | lab: Practice with animations | ||||
02/10/06 | HW2 | Randomness in an animation | |||
02/13/06 | HTDP chap. 6.1 | lecture: posns and coordinates | |||
02/13/06 | lab: practice with posns | ||||
02/15/06 | HTDP chap. 6.3-6.5 | lecture: defining your own structs | |||
02/15/06 | lab: Practice defining structs | ||||
02/17/06 | Discuss homework and writing animations | ||||
02/20/06 | Discuss homework and writing animations | ||||
02/20/06 | lab: work on animations | ||||
02/21/06 | Last day to drop classes | ||||
02/22/06 | HTDP chap. 7 | lecture: mixed data types | |||
02/22/06 | lab: Practice with user-defined structs and mixed data types | ||||
02/24/06 | HW2 due; HW3 | HTDP chap. 8 | lecture: syntax and semantics | ||
02/27/06 | HTDP chap. 9 | lecture: lists | |||
02/27/06 | lab: Practice with lists | ||||
03/01/06 | HTDP chap. 9 | lecture: searching and counting in lists | |||
03/01/06 | lab: Practice with these | ||||
03/03/06 | HW3 due; HW4 | lecture: using templates on structs and mixed types | |||
03/06/06 | HTDP chap. 10 | lecture: functions returning lists; lists of structs | |||
03/06/06 | lab: practice with these | ||||
03/08/06 | HTDP chap. 11 | lecture: natural-number recursion | |||
03/08/06 | lab: Practice with natural numbers | ||||
03/10/06 | HW4 due; HW5 | HTDP chap. 12 | lecture: recursive auxiliary functions | ||
03/13/06 | HTDP chap. 13-15 | lecture: list syntax, trees, and lists of lists | |||
03/13/06 | lab: Practice with these | ||||
03/15/06 | HTDP chap. 18 | lecture: local definitions | |||
03/15/06 | lab: practice with local |
||||
03/17/06 | HW6 | HTDP chap. 19 | lecture: generalizing a function | ||
03/20/06 | HW5 due | HTDP chap. 19-21 | lecture: generalizing functions, designing abstractions | ||
03/20/06 | HTDP chap. 22 | lab: writing higher-order functions; GUI's | |||
03/22/06 | HTDP chap. 34-35, 40 | lecture: assignment, sequence, and I/O | |||
03/22/06 | lab: practice with assignment, sequence, and I/O | ||||
03/24/06 | HW6 due | HTDP chap. 39, 40 | lecture: encapsulating state and information-hiding | ||
03/27/06 | HtDCH chaps. 1-3 | lecture: Java philosophy; translating data definitions to Java | |||
03/27/06 | lab: using ProfessorJ; writing classes in Java | ||||
03/29/06 | HtDCH chaps. 4-5 | lecture: mixed data types, aka unions of classes | |||
03/29/06 | lab: practice with these; lists in Java | ||||
03/31/06 | HtDCH chaps. 6-7 | lecture: class diagrams | |||
03/31/06 | Last day to withdraw from classes | ||||
04/03/06 | HtDCH chaps. 8-10 | lecture: from functions to methods; "this" and "return" | |||
04/03/06 | lab: practice writing methods | ||||
04/05/06 | HW7 | HtDCH chaps. 11-13 | lecture: methods for classes defined by choices | ||
04/05/06 | lab: practice writing methods; CodeLab | ||||
04/07/06 | HtDCH chaps. 14-15 | lecture: summarize and review Java so far | |||
04/10/06 | Spring break | ||||
04/12/06 | |||||
04/14/06 | |||||
04/17/06 | HtDCH chap. 16 | lecture: testing equality on union types | |||
04/17/06 | lab: practice w/multiple dispatch | ||||
04/19/06 | HtDCH chap. 16 | lecture: abstract classes | |||
04/19/06 | lab: patch to allow multiple dispatch; practice w/ abstract classes | ||||
04/21/06 | HtDCH chap. 17 | lecture: designing hierarchies of classes | |||
04/24/06 | HW7 due | HtDCH chap. 18 | lecture: private, public, and overloading | ||
04/24/06 | lab: practice w/ protection specifiers and overloading | ||||
04/26/06 | HW8 | HtDCH chap. 19 | lecture: bidirectional references, assignment, mutation | ||
04/26/06 | lab: practice w/assignment and mutation | ||||
04/28/06 | lecture: sequence, void methods, local variables | ||||
05/01/06 | lecture: ArrayLists; traversing with recursion | ||||
05/01/06 | lab: practice with ArrayLists | ||||
05/03/06 | lecture: for -loops and while -loops |
||||
05/03/06 | lab: practice writing loops | ||||
05/05/06 | lecture: input & output; using while-loops on input | ||||
05/08/06 | lecture: Catch up & review | ||||
05/08/06 | HW8 due | lab: Catch up & review | |||
05/10/06 | Emergency/Study Day | ||||
05/15/06 | 171 final exam, 10:30-12:30 |