Date | Topics | Reading | Due dates and quizzes |
---|---|---|---|
August 28 | About the course (Notes) | ||
September 2 | Objects, classes, and UML (Notes) | 0, 1 | |
September 4 | Java basics (Notes) | 2,3,5,6 | |
September 9 | No class | ||
September 11 | Inheritance in Java (Notes) | 4.5 | Homework 1 (design) |
September 16 | Inheritance and polymorphism (Notes) | Homework 1 (code) | |
September 18 | String processing (Notes) | 7 | Quiz 1 |
September 23 | Arrays (Notes) | 8 | |
September 25 | Sorting, searching, and manipulating arrays (Notes) | Homework 2 (design) | |
September 30 | Sorting and searching, continued (Notes) | Homework 2 (code) | |
October 2 | Stacks and queues (array-based) (Notes) | Quiz 2 | |
October 7 | Linked lists (Notes) | 16.1, 16.2 | Homework 3 (design) |
October 9 | Linked lists and iterators (Notes) | Quiz 3 Homework 3 (code) | |
October 14 | Midterm exam (Review) | ||
October 16 | Stacks, queues, and priority queues (list-based) (Notes) | 16.3, 16.4 | Homework 4 (design) |
October 21 | Exceptions in Java (Notes) | 11 | Homework 4 (code) |
October 23 | GUIs in Java (Notes) | 9 | |
October 28 | No class | Homework 5 (design) | |
October 30 | GUIs in Java, continued (Notes) |   | Homework 5 (code) |
November 4 | Graphics in Java (Notes) | 10 | Quiz 4 |
November 6 | Recursion (Notes) | 12 | Homework 6 (design) |
November 11 | Recursion, continued (Notes) | ||
November 13 | Binary trees (Notes) | Quiz 5 Homework 6 (code) | |
November 18 | Heap-based priority queue (Notes) | ||
November 20 | Threads (Notes) | 13 | Homework 7 (design) |
November 25 | Files and streams (Notes) | 14 | |
December 2 | Files and streams, continued (Notes) | Quiz 6; Homework 7 (code) | |
December 4 | Sockets and networking (Notes) | 15 | |
December 9 | Course wrap-up (Notes) | ||
December 15 (8:30am) | Final exam (Review) | Homework 8 (design and code) |