Assignments | Class Photo | Course Home | Documentation | Schedule & Lecture Notes | Submit

Saint Louis University

Computer Science 290
Object-Oriented Software Design

Michael Goldwasser

Fall 2008

Dept. of Math & Computer Science


Please note that the schedule for future classes is tentative.

Also note: For each lecture, we denote both a topic as well as the associated reading in the textbook. The live link on the 'topic' leads to a page of my personal notes for that lecture. Those personal notes are not nearly as complete or polished as the associated readings from the text. In truth, they exist mostly to provide a brief outline of the day's lecture. Students are expected to read the associated sections of the text. In cases where my notes include material which is not explicitly in the text, I will add the word "notes" to the explicit reading list.

Week Day Topic Reading
Aug 25-Aug 29 Tues Course Overview
Voice Mail System case study
CRC Cards, Use Cases
Ch. 2.1-2.4, 2.6-2.7
Thur design of Voice Mail System (continued)
Sep 1-Sep 5 Tues Summary of text's Voice Mail System
Ch. 2.5, 2.8-2.12
Thur Introduction to Java Ch. 1, Ch. 2.12.5
Sep 8-Sep 12 Tues Introduction to Eclipse
Thur Guidelines for Class Design Ch. 3.1-3.5
Sep 15-Sep 19 Tues Overview of Java's Date/Calendar classes
Thur Polymorphism in Python, C++, Java
(examples: python, C++ template, C++ abstract class, java)
Start of Ch. 4
Sep 22-Sep 26 Tues Java interfaces Ch. 4.1-4.2
Thur Comparable and Comparator interfaces
Anonymous classes
Ch. 4.3-4.5
Sep 29-Oct 3 Tues GUIs and ActionListeners Ch. 4.6-4.8
Thur More about ActionListeners (examples)
Oct 6-Oct 10 Tues Introduction to Design Patterns:
Iterator, Observer, Strategy, Composite
Ch. 5.1-5.5
Thur Design Patterns
Implementing a LayoutManager strategy
Ch. 5.4.2
Oct 13-Oct 17 Tues Revisiting our AirlineSystem
Thur Midterm Exam (includes material through Oct 9 )
Oct 20-Oct 24 Tues No Class: Fall Break
Thur Mechanics of Inheritance (Java, Python, C++) Ch. 6.1
See turing:/Public/goldwasser/290/inheritance
Oct 27-Oct 31 Tues Inheritance, Abstract Classes, and Interfaces
Thur (in class work on Airline assignment)
Nov 3-Nov 7 Tues MouseListener and MouseMotionListener
CarMover case study
Ch. 6.2
Thur SceneEditor case study Ch. 6.3-6.5
Nov 10-Nov 14 Tues Multiple Inheritance (C++, Python, Java) Ch. 6.6
Python: Python's MRO
Thur The Java Object Model
(types, values, Object class)
Ch. 7.1-7.4
Nov 17-Nov 21 Tues The Java Object Model (sample code)
Thur Generics in Java Ch. 7.7
additional notes
Nov 24-Nov 28 Tues AirlineSystem discussion
Thur No Class: Thanksgiving Break
Dec 1-Dec 5 Tues Multithreading Ch. 9
Thur Multithreading Ch. 9

Dec 16 Tue Final Exam (2:00-3:50)

Michael Goldwasser
CSCI 290, Fall 2008
Last modified: Friday, 21 November 2008
Assignments | Class Photo | Course Home | Documentation | Schedule & Lecture Notes | Submit