Calendar
This page gives you a high level overview of the what the course will cover. Of course, the
lectures are subject to change; this page will be updated as changes are made.
For a more detailed breakdown of each of the events, as well as class handounts, you should refer
to the outline of lectures page.
Week |
Date |
Event |
Topic |
Reading |
1 |
24 Jan |
Lecture 1 |
Types and Expressions |
Section 1.1 |
|
Lab 1 |
Evaluating Expressions |
Section 1.1 |
26 Jan |
Lecture 2 |
Variables and Assignments |
Sections 1.2 and 1.3 |
2 |
30 Jan |
Quiz 0 |
CMS Check |
|
31 Jan |
Lecture 3 |
Objects and APIs |
Section 1.4 |
Quiz 1 |
Types |
|
|
Lab 2 |
Using the Java API |
Section 1.3 |
2 Feb |
Lecture 4 |
Classes |
Sections 1.4 and 1.5 |
3 |
7 Feb |
Lecture 5 |
Methods and Testing |
pp. 112-114 and Appendix I.2.4 |
Quiz 2 |
Constructors |
|
|
Lab 3 |
Classes and Testing |
Sections 1.5 and 1.6 |
9 Feb |
Lecture 6 |
Scope and Conditionals |
Sections 2.1 - 2.4 |
4 |
14 Feb |
Lecture 7 |
Stepwise Refinement |
Sections 2.5 and 3.1.2-3.1.3 |
|
Lab 4 |
String Exercises |
|
16 Feb |
Lecture 8 |
Wrappers and Containers |
Sections 5.1 and 2.5 |
5 |
21 Feb |
Lecture 9 |
Inheritance |
Section 1.6, 4.1 |
|
Lab 5 |
Using Vectors |
Section 5.3 |
23 Feb |
Lecture 10 |
Casting and Overriding |
Section 4.2, 4.3 |
6 |
28 Feb |
Lecture 11 |
Interlude: OO Programming |
|
|
Lab 6 |
Abstract Classes |
Section 4.7 |
1 Mar |
Lecture 12 |
Recursion |
Sections 15.1 - 15.3 |
7 |
6 Mar |
Lecture 13 |
More on Recursion |
Sections 15.1 - 15.3 |
|
Lab 7 |
Recursion Exercises |
Sections 15.1 - 15.3 |
8 Mar |
Lecture 14 |
Call Stack and Debugging |
Sections 2.7 and 3.5 |
Prelim 1 |
Up to Lecture 11 |
|
8 |
13 Mar |
Lecture 15 |
Exceptions |
Chapter 10 |
|
Lab 8 |
Exception Handling |
Chapter 10 |
15 Mar |
Lecture 16 |
For-Loops |
Section 2.3.8 |
9 |
27 Mar |
Lecture 17 |
Loop Design and Testing |
Chapter 7 |
|
Lab 9 |
Loop Exercises |
|
29 Mar |
Lecture 18 |
While-Loops |
Chapter 7 |
10 |
3 Apr |
Lecture 19 |
Arrays |
Sections 8.1-8.3 |
|
Lab 10 |
File I/O |
|
5 Apr |
Lecture 20 |
Array Algorithm Design |
Sections 8.1-8.3 |
11 |
10 Apr |
Lecture 21 |
Seaching and Sorting |
Sections 8.3 - 8.5, 15.4 |
|
Lab 11 |
Loops and Invariants |
Chapter 8 |
12 Apr |
Lecture 22 |
Interlude: OO Design |
|
12 |
17 Apr |
Lecture 23 |
GUI Layout |
Sections 17.1-17.3 |
Prelim 2 |
Lectures 12 through 21 |
|
|
Lab 12 |
Timing Performance |
|
19 Apr |
Lecture 24 |
GUI Listeners |
Section 17.4 |
13 |
24 Apr |
Lecture 25 |
Multidimensional Arrays |
Chapter 9 |
|
Lab 13 |
Formatting Locales |
|
26 Apr |
Lecture 26 |
Interfaces |
Chapter 12 |
14 |
1 May |
Lecture 27 |
Moving Beyond DrJava |
|
|
Lab 14 |
Finishing Up |
|
3 May |
Lecture 28 |
Conclusion |
|
15 |
10 May |
Final Exam |
All Lectures |
|
|