Date |
Topics |
Reading |
Due dates and quizzes |
August 29 |
About the course |
|
|
September 3 |
Objects; classes; UML |
0, 1 |
|
September 5 |
Java basics |
2, 3, 5, 6 |
Homework 1
(design)
|
September 10 |
Java basics, continued; inheritance in Java |
4.5 |
Homework 1
(code)
|
September 12 |
Inheritance and polymorphism |
|
|
September 17 |
String processing |
7 |
Quiz 1
|
September 19 |
Arrays
|
8 |
Homework 2
(design) |
September 24 |
Arrays, continued |
|
Homework 2
(code)
|
September 26 |
Arrays, continued |
|
Quiz 2
|
October 1 |
Arrays, continued |
|
Homework 3
(design) |
October 3 |
Stacks and queues (using arrays) |
16.1, 16.2 |
Homework 3
(code) |
October 8 |
Stacks and queues, continued; linked lists |
|
Quiz 3
|
October 10 |
Linked lists, continued |
|
Homework 4
(design) |
October 15 |
GUIs in Java |
9 |
Homework 4
(code) |
October 17 |
Midterm exam
(Review)
|
|
|
October 22 |
GUIs in Java, continued |
|
|
October 24 |
Stacks, queues, and priority queues (using linked lists) |
16.3, 16.4 |
|
October 29 |
Exceptions |
11 |
Homework 5
(design) |
October 31 |
Graphics in Java |
10 |
Quiz 4;
Homework 5
(code) |
November 5 |
Graphics in Java, continued |
|
Homework 6
(design) |
November 7 |
Recursion |
12 |
|
November 12 |
Recursion, continued |
|
Homework 6
(code) |
November 14 |
Binary trees |
|
Quiz 5
|
November 19 |
Heap-based priority queues |
|
|
November 21 |
Threads |
13 |
Homework 7
(design) |
November 26 |
Threads, continued;
files and streams |
14 |
Homework 7
(code) |
December 3 |
Files and streams, continued
|
|
Quiz 6
|
December 5 |
Files and streams, continued; sockets and networking
|
15 |
Homework 8
(design -- really due December 6) |
December 10 |
Sockets and networking, continued; course wrap-up
|
|
|
|
|
|
|
December 14 (2pm) |
Final exam
(Review)
|
|
Homework 8
(code -- really due December 16) |