|
|
|
|
This calendar is a main resource for class materials.
Use it to find textbook reading assignments, links to lecture slides,
and reminders of classroom activities. Slides for future
classes are taken from the Spring 2004 offering of the course. You
can use these to get a good idea of what to expect, although there will
undoubtedly be some changes
made this quarter. Updated slides (marked with a *) will generally be
posted by the night before each lecture. We suggest you print the updated
slides
and bring them to class to take notes.
Readings refer to the
2nd edition of the textbook; readings in brackets refer to the first
edition, which should be adequate if you already have a copy of it. Companion
files for the book including examples can be found at http://www.cs.uno.edu/~fred/nhText/.
Projects will generally be due electronically on Wednesday
nights, but the exact deadlines and details are subject to change. Midterm
exams will be held on the dates given unless exceptional curcumstances
arise.
All dates are subject to change as we adjust to the new
Autumn quarter schedule that begins in mid-week instead of on Monday.
Week |
Day |
Date |
Topic (with link to slides, if any)
/ Reading (note 1) |
Notes |
1 |
M |
|
|
|
T |
|
|
|
W |
29-Sep |
First day of class
* Introduction
and Administrativia (4-up)
|
|
Th |
30-Sep |
Introductions & review |
|
F |
1-Oct |
* Modeling (4-up)
/ Chs. 1-6 [Chs. 1-6] (review your CSE142 book)
* Relationships between classes - inheritance (4-up)
/ Ch. 10, 11 [Ch. 9, 14] |
|
2 |
M |
4-Oct |
Inheritance, cont. |
|
T |
5-Oct |
Modeling and Class Design |
|
W |
6-Oct |
* More about inheritance (4-up)
Paper: * All I Really Need to Know about
Pair Programming I Learned in Kindergarten
|
Project 1A assigned |
Th |
7-Oct |
Inheritance and types; project 1 |
|
F |
8-Oct |
*Testing and JUnit (4-up)
/ Ch. 6, www.junit.org & DrJava help
Sample code: Employee.java, ExemptEmployee.java, Manager.java,
HourlyEmployee.java, HourlyEmployeeTest.java
|
|
3 |
M |
11-Oct |
* Interfaces (4-up)
/ Sec. 9.1-9.4, 9.7 [Sec. 15.1.3]
* Introduction to graphical user
interfaces and Swing (4-up)
/ Sec. 17.1-17.3, 17.7 [Sec. 19.1-19.3, 19.5] Online tutorial: Sun
Java Swing Tutorial (use as a "just-in-time" reference) |
|
T |
12-Oct |
Classes, packages, interfaces, and inheritance |
|
W |
13-Oct |
* Models and views (MVC) (4-up)
/ Ch. 18 [Ch. 20]
Sample code: Face.java, FaceTest.java
Bouncing ball world code:
Ball.java, BallGraphicsView.java, BallSim.java, SimModel.java, SimThing.java,
SimView.java
|
Project 1A due |
Th |
14-Oct |
Classes, interfaces, and inheritance (concl.);
Swing; project 1B |
|
F |
15Oct |
MVC and Swing
* Packages and scope (4-up)
/ Sec. 10.5, 10.6 [Sec. 14.6, 14.7]
|
|
4 |
M |
18-Oct |
* Event-driven programming (4-up)
/ Ch. 17-18, esp. 17.4 [Chs. 19-20 esp. 19.4]
Sample code: ButtonDemo.java, ButtonListener.java, ButtonTest.java
MouseTracker.java, MouseTest.java
Ball.java, BallGraphicsView.java, BallSim.java, BallSimControl.java,
SimModel.java, SimThing.java, SimView.java
|
|
T |
19-Oct |
Packages, events, etc. |
|
W |
20-Oct |
Event-driven programming
* Event adapters; inner classes (4-up)
/ Ch. 17 [Ch. 19] |
Project 1B due |
Th |
21-Oct |
Event-driven programming; Midterm
review |
|
F |
22-Oct |
* Event
adapters; inner classes (4-up)
/ Ch. 17 [Ch. 19]
Bouncing balls with inner classes:
Ball.java, BallGraphicsView.java, BallSim.java, BallSimControl.java,
SimModel.java, SimThing.java,
SimView.java
Bouncing balls with anonymous inner classes: above files except
for BallSimControl.java
* Programming
by contract; exceptions, and assertions (4-up)
/ Ch. 5 [Ch. 7]
|
|
Su |
24-Oct |
Midterm review session, 3:00 |
|
5 |
M |
25-Oct |
Midterm 1 in class |
|
T |
26-Oct |
Events; project 1 last minute issues |
|
W |
27-Oct |
* Exception Handling (4-up)
/ Ch. 15 [Ch. 18] |
Project 1C due |
Th |
28-Oct |
Exception Q&A, HashMaps and wrapper classes |
|
F |
29-Oct |
* Streams and files (4-up)
/ Ch. 16 [Sec. 19.1; Appendix A2] |
Project 1 report due |
6 |
M |
1-Nov |
Streams
* Collections (4-up)
[slides added 11/1]/ Ch. 12 [Ch. 12] (review) |
|
T |
2-Nov |
Catch-up: exceptions, streams, strings, etc. |
|
W |
3-Nov |
Collections cont.
* Implementing Lists with Arrays (4-up)
(intro) / Ch. 13 [Ch. 22]
|
Project 2A due |
Th |
4-Nov |
Collections |
|
F |
5-Nov |
Implementing lists with arrays |
|
7 |
M |
8-Nov |
Implementing lists with arrays
Sample code so far: SimpleArrayList.java, SimpleArrayListTest.java |
|
T |
9-Nov |
Lists and arrays |
|
W |
10-Nov |
Implementing equals and iterators for collections /
Sec. 12.8
Sample code: SimpleArrayList.java, SimpleArrayListTest.java |
Project 2B due |
Th |
11-Nov |
Veterans Day -- No Class |
|
F |
12-Nov |
* Program Efficiency
and Complexity (4-up)
/ [Ch. 21 (ignore heavier math)] |
Project 2 report due, 5pm |
8 |
M |
15-Nov |
Midterm 2 in class |
|
T |
16-Nov |
Basic complexity |
|
W |
17-Nov |
Effeciency and complexity (concl.)
|
|
Th |
18-Nov |
Complexity |
|
F |
19-Nov |
* Recursion
and Binary Search (4-up)
/ Ch. 14, Sec. 19.1-19.2, 19.4 [Ch. 13, Secs. 17.1-17.3]
|
|
9 |
M |
22-Nov |
Recursion (cont) |
|
T |
23-Nov |
recursion |
|
W |
24-Nov |
* Sorting (4-up)
/ Sec. 19.3 [Ch. 13, Sec. 17.3] |
Project 3A due |
Th |
25-Nov |
Thanksgiving -- No Class |
|
F |
26-Nov |
Thanksgiving -- No Class |
|
10 |
M |
29-Nov |
Sorting (concl.) |
|
Tu |
30-Nov |
Mergesort |
|
W |
1-Dec |
* Linked Lists (4-up)
/ Ch. 20 [Ch. 23]
|
|
Th |
2-Dec |
Linked data structures |
|
F |
3-Dec |
* Stacks and queues (4-up) |
|
11 |
M |
6-Dec |
* Trees (4-up) |
Project 3B due |
Tu |
7-Dec |
Data structures |
|
W |
8-Dec |
* Binary
Search Trees (4-up) |
Project 3 report due |
Th |
9-Dec |
Review and conclusion |
|
F |
10-Dec |
* Hashing (4-up) |
|
Final Exam
|
W |
15-Dec |
2:30-4:20 p.m. Wednesday, Dec.
15, 2004, Kane 120 |
|
|