COSC 3P91
Course Outline

Instructor: Michael Winter, Office J323, Office Hours: Mon 10:00am - noon, Wed 02:00pm - 04:00pm, email: mwinter@brocku.ca


Calendar description

Advanced object-oriented programming techniques such as graphical user interfaces, animation, sound, music, networking, parallelism, client-server and XML using game design as an example. Topics in object-oriented program design including UML and design patterns. Introduction to advanced Java APIs such as awt, swing, io, nio, sound, net and xml.

Prerequisites: two COSC credits or permission of the instructor.

Course Description

This course is about advanced object-oriented programming (OOP) including OO concepts, OO modelling, design patterns and the advanced Java APIs.

Course Outline

Week
Date
Book/Chapt.
Topics
1 Jan 08/10 [2]/4,5,6.7,8 Introduction, Review of OO concepts, Basic UML (no lab this week)
2 Jan 15/17 [2]/4,5,6.7,8 Review of OO concepts, Basic UML Utility classes
3 Jan 22/24 [2]/4,5,6.7,8 Collection classes, IO (Lab test 1)
4 Jan 29/31 [2]/7,8 Design patterns I
5 Feb 05/07 [2]/7,8 Design patterns II
6 Feb 12/14 [1]/1,[2]/7,8,11 XML, Threads (Lab test 2)
7* Feb 26/28 [1]/1,[2]/7,8,11 Multitasking, Concurrency design patterns
8 Mar 05/07 [1]/2,[2]/8 GUI (AWT, Swing)
9 Mar 12/14 [1]/2,[2]/8 2D graphics, Animation (Lab test 3)
10 Mar 19/21 [1]/3,4,6 Sound effects & music
11 Mar 26/28 [1]/3,4,6 Network programming
12 Apr 02/04 n/a Review (no lab this week)
* Feb 17-21 is Reading Week.

Texts

[1] (recommended) Developing Games in Java,  D. Brackeen, New Riders (2003), ISBN 1-5927-3005-1
[2] (recommended) Object-Oriented Software Development Using Java, second edition, Xiaoping Jia, Pearson(2002), ISBN 0-201-73733-7
[3] Source code for the "Developing Games in Java" book

COSC Home Page
COSC 3P91 Home Page
© M. Winter, 2024