UW Home     CSE Home   Announcements    Discussion Board    Contact Info 

 
 
 

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 Autumn 2004 offering of the course and are marked with a *. 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 (no *) 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 circumstances arise.

All dates are subject to change...

Week Day Date Topic (with link to slides, if any) / Reading (note 1) Notes
1 M 3-Jan First day of class
Introduction and Administrativia (4-up)
Modeling (4-up) / Chs. 1-6 [Chs. 1-6] (review your CSE142 book)
 
T 4-Jan Introductions & review  
W 5-Jan 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]
 
Th 6-Jan Inheritance and class relationships  
F 7-Jan More about inheritance Project 1A assigned
2 M 10-Jan More about inheritance (4-up)

T 11-Jan Inheritance
 
W 12-Jan Testing and JUnit (4-up) / Ch. 6, www.junit.org & DrJava help
Sample code: Employee.java, ExemptEmployee.java, Manager.java, HourlyEmployee.java, HourlyEmployeeTest.java
Paper: All I Really Need to Know about Pair Programming I Learned in Kindergarten
 
Th 13-Jan Testing; project 1
 
F 14-Jan 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)
Sample code: Face.java, FaceTest.java
 
3 M 17-Jan Martin Luther King Day, No Class  
T 18-Jan Interfaces and inheritance  
W 19-Jan Models and views (MVC) (4-up) / Ch. 18 [Ch. 20]
Bouncing ball demo program: Ball.java, BallGraphicsView.java, BallSim.java, SimModel.java, SimThing.java, SimView.java
Project 1A due
Th 20-Jan Swing, MVC  
F 21-Jan MVC and Swing
Packages and scope (4-up) / Sec. 10.5, 10.6 [Sec. 14.6, 14.7]
 
4 M 24-Jan 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
MouseTest.java, MouseTracker.java
 
T 25-Jan Packages, events, etc.  
W 26-Jan

Event-driven programming
Event adapters; inner classes (4-up) / Ch. 17 [Ch. 19]
Sample code with user interaction: Ball.java, BallGraphicsView.java, BallSim.java, BallSimControl.java, SimModel.java, SimThing.java, SimView.java
2nd version of BallSimControl.java with inner (nested) classes
3rd version of BallSimControl.java with an anonymous inner class

 
Th 27-Jan Event-driven programming; Midterm review  
F 28-Jan Programming by contract; exceptions, and assertions (4-up) / Ch. 5 [Ch. 7]
 
Su 30-Jan Midterm review session, 3pm, SAV 239  
5 M 31-Jan Midterm 1 in class (tentative)  
T 1-Feb Events  
W 2-Feb Exception Handling (4-up) / Ch. 15 [Ch. 18]  
Th 3-Feb Exception Q&A, HashMaps and wrapper classes  
F 4-Feb Streams and files (4-up) / Ch. 16 [Sec. 19.1; Appendix A2]  
6 M 7-Feb Streams
Collections (4-up) [slides added 11/1]/ Ch. 12 [Ch. 12] (review)
 
T 8-Feb Catch-up: exceptions, streams, strings, etc.  
W 9-Feb Collections (cont.)
Implementing Lists with Arrays (4-up) (intro) / Ch. 13 [Ch. 22]
 
Th 10-Feb Collections  
F 11-Feb Implementing lists with arrays (cont.)
Sample code: SimpleArrayList.java, SimpleArrayListTest.java
 
7 M 14-Feb Implementing equals and iterators for collections / Sec. 12.8
Sample code: SimpleArrayList.java, SimpleArrayListTest.java
 
T 15-Feb Equals and iterators  
W 16-Feb Linked Lists (4-up) / Ch. 20 [Ch. 23]  
Th 17-Feb Linked data structures  
F 18-Feb Linked lists
Sample code: SimpleLinkedList.java, SimpleLinkedListTest.java
 
8 M 21-Feb Presidents Day -- No Class  
T 22-Feb Midterm review  
W 23-Feb Midterm 2 in class  
Th 24-Feb Catch up
 
F 25-Feb Program Efficiency and Complexity (4-up)  
9 M 28-Feb Efficiency and Complexity
 
T 1-Mar Recursion
 
W 2-Mar Recursion and Binary Search (4-up) / Ch. 14, Sec. 19.1-19.2, 19.4 [Ch. 13, Secs. 17.1-17.3]  
Th 3-Mar Mergesort
 
F 4-Mar Sorting (4-up) / Sec. 19.3 [Ch. 13, Sec. 17.3]
 
10 M 7-Mar Trees (4-up)  
Tu 8-Mar Linked data structures  
W 9-Mar Binary Search Trees (4-up)
Hashing (4-up)
 
Th 10-Mar Trees; Review and conclusion
 
F 11-Mar ; Quicksort  

Final Exam

W 16-Mar 2:30-4:20 p.m. Wednesday, Mar. 16, 2005