CSE-509: Object Oriented Programming - Syllabus



Instructor: Harry Porter

Home Phone: 503-224-0014
Email: harry@cse.ogi.edu
Office space at OGI: Room 146, CSE Central
Office hours: directly after class meetings and by arrangement

Teaching Assistant: Yue Li

Email: yuel@cse.ogi.edu
Office: Room 146, CSE Central
Office hours: Tue, Thurs, 4:00-5:00

Course Description:

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

Required Textbooks:

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 ( ogi.follettexpress.com ).

Exams:

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.

Prerequisite:

CSE-504: Object-Oriented Analysis and Design

Programming Projects:

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:

Attendance in class is mandatory.

Grading:

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.
Programming 30%
Project 30%
Midterm 15%
Final 25%

Mailing List:

There is an email mailing list called cse509-list, which you should subscribe to. To add yourself to the list, send an email to majordomo@cse.ogi.edu with no subject and a single line in the message body:

subscribe cse509-list

You may submit short messages to this mailing list by emailing to cse509-list.

Harry H. Porter III
Back to: Harry's Home Page
Email to: harry@cs.pdx.edu
Last Updated: January 11, 2001.