This schedule is tentative and likely to be revised. |
Date | Topic | Slides | Code | Reading | Week 1 |
Lecture Videos |
Introductions, Program Design |
|
Value-Oriented Programming | Week 2 |
Lecture Videos |
No Class: MLK Day | Functions, Lists and Recursion | Lists, Tuples, Nested Patterns |
|
Week 3 |
Lecture Videos |
Datatypes and Trees | Tue 1/28 | Trees and Binary Search | BST Insert & Delete | Week 4 |
Lecture Videos |
Generics and Higher-order Functions | Tue 2/4 | Higher-order Functions: Transform and Fold | Abstract Types: Sets | Week 5 |
Lecture Videos |
Abstract Types II: Sets & Finite Maps / Typechecking | Tue 2/11 | Typechecking | Midterm 1 |
Prior exams: 24fa: 24sp: 23fa: 23sp: |
Week 6 |
Lecture Videos |
Options / Records / Unit, Sequencing, Commands / Mutable State Aliasing | Mutable Data Structures, Abstract Stack Machine | Mutable Queues | Week 7 |
Lecture Videos |
Iteration and Tail Recursion | Tue 2/25 | Closures and Objects | GUI Design: Gctx and Widgets | Week 8 |
Lecture Videos |
GUI Design: Widgets, Layout, and Events | GUI Design: Events, Notifiers, and Controllers | No Class: Spring Break | No Class: Spring Break | No Class: Spring Break | No Class: Spring Break | Week 9 |
Lecture Videos |
Transition to Java | Tue 3/18 | Static Methods, Java Arrays | Arrays Wrap-up / Debugger / Java ASM | Week 10 |
Lecture Videos |
Java ASM, Dynamic Dispatch | Tue 3/25 | Java ASM, Dynamic Dispatch, Generic Types | Midterm 2 |
Prior exams: 24fa: 24sp: 23fa: 23sp: 22fa: |
Week 11 |
Lecture Videos |
Generic Types and Collections | Overriding, Equality | Enums, Iteration | Week 12 |
Lecture Videos |
Exceptions | Tue 4/8 | Java I/O | I/O: Histogram Demo | Week 13 |
Lecture Videos |
Swing I: Drawing and Event Handling | Tue 4/15 | Swing II: Inner Classes and Layout | Thu 4/17 | Swing III: MoD | Week 14 |
Lecture Videos |
Swing IV: Reimplementing Paint / Advanced Java | Bonus Lecture: CIS and Sustainability | Bonus Lecture: Code _is_ data | Week 15 |
Lecture Videos |
Tue 4/29 | Semester Recap | TBA | Final Exam |
Prior exams: 24fa: 24sp: 23fa: 23sp: 22fa: 22sp: 21fa: |
---|