CSE-509: Object Oriented Programming - Syllabus
Instructor: Harry Porter
Home Phone: 503-224-0014
Office space at OGI: Room 146, CSE Central
Office hours: directly after class meetings and by arrangement
Teaching Assistant: Yue Li
Office: Room 146, CSE Central
Office hours: Tue, Thurs, 4:00-5:00
This course provides a rigorous introduction to the concepts behind object-oriented programming. It is for students who are already famailiar with the concepts of object-oriented analysis and design techniques. One way to learn this background material is by taking CSE 504 Object-Oriented Analysis and Design. In CSE 509, students gain a thorough understanding of incremental programming, type-safety, polymorphism, encapsulation, and set-based abstraction, and apply these concepts through a variety of programming projects. We studey several programming languages, including Java and Smalltalk, so students are exposed to different realizations of these concepts and gain an appreciation for the programming language design space. We also look at published object-oriented design patterns and see how they can be implemented in different object-oriented programming languages. Students are required to read appropriate research papers, complete several short programming assignments, complete a substantial programming project, and write some short essays. Prerequisite: CSE 504 or equivalent. 3 credits.
When and Where:
Monday & Wednesday, 4:00PM - 5:20PM
Administration Building, Room AB401, (Bldg 2 on the map),
Map of OGI Campus
First Class: Monday, January 8, 2001
No class on: February 19 (Mon) - President's Day
OGI Weather / Closure Hotline: 748-1551
Squeak; Object-Oriented Design with Multimedia Applications, by Mark Guzdial. Published by Prentice Hall. ISBN 0-13-028028-3.
The Java Programming Language (Third edition), by Ken Arnold, James Gosling, David Holmes. Published by Addison-Wesley. ISBN 0-201-70433-1.
The textbooks are required and are available through FollettExpress (
Midterm Exam: Monday, February 19, 4:00PM - 5:20PM
Final Exam: Monday, March 19, 4:00PM - 5:20PM
The final will be comprehensive. The exams will be closed book and closed notes.
CSE-504: Object-Oriented Analysis and Design
HW 1: Introducing Smalltalk (1 week)
HW 2: Smalltalk Programming Assignment (1 week)
HW 3: Smalltalk Programming Assignment (1 week)
HW 4: Smalltalk Programming Assignment (2 week)
HW 5: Java Programming Assignment (1 or 2 weeks, concurrent with project)
Project: Student-Selected Project (in Smalltalk, 4 weeks)
Students are encouraged to discuss the programming projects among themselves. However, the actual coding must be done solely by each student. In other words, you are encouraged to share ideas, to talk specifics, and even to look directly at code when discussing code specifics with another student, but you are forbidden from sharing or copying code.
Attendance in class is mandatory.
The final exam may test on material covered only in class and on material covered only in the reading assignments. Your grade will be based approximately, as follows. These percentages are tentative; I may change them.
There is an email mailing list called cse509-list, which you should subscribe to. To add yourself to the list, send an email to email@example.com with no subject and a single line in the message body:
You may submit short messages to this mailing list by emailing to cse509-list.
Harry H. Porter III
Harry's Home Page
Last Updated: January 11, 2001.