CSC207H: Summer 2009

Overview

Welcome to the course webpage for the summer 2009 term of CSC207H: Software Design, taught by Jonathan Lung. Here is the course description:

An introduction to software design and development concepts, methods, and tools using a statically-typed object-oriented programming language such as Java.

Topics from: version control, build management, unit testing, refactoring, design patterns, advanced IDE usage, regular expressions, markup languages, parsing using finite state machines, and reflection.

We want you to learn the following:

There will be other topics, but I consider these the core components of CSC207H.

The course is delivered through 2 lecture hours a week plus 1-hour tutorials that will take place in computer labs.

Outside of class and tutorials, you will also complete a set of four small exercises, two assignments, and a multi-phase project. The project will be done in a team of four or five students; I will form the teams. There is also a midterm and a final exam. This is covered in much more detail in the course information sheet.

Tutorials

The following applies to exercise tutorials only:

Last names beginning with A-N in BA3175
Last names begging with O-Z in BA3195

Textbook

You should have a Java reference. On-line references such as the J2SE tutorial tutorial from Sun Microsystems will suffice. If you don't have one, we recommend Developing Java Software, 3rd Edition, by Winder and Roberts.

Contact information

Jonathan Lung LungJ at cs dot toronto dot edu BA 2200 T3-4