Overview
Welcome to the course website for the Fall 2009 term of CSC207H, Software Design, taught by Jim Clarke and Paul Gries. Here, for the record, is the course information sheet.
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:
- Java for desktop applications
- Java for mobile devices
- How to work from an unclear, unfinished set of requirements to a reasonably complete specification
- How teams of programmers work on the same code base
There will be other topics, but we 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 the computer labs.
Outside of class and lab, you will also complete a set of smallish exercises, two assignments, and a multi-phase project. The project will be done in teams about four students; Jim and Paul will form the teams. There is also a midterm and a final exam.
Contact information
| Instructor | Office | Phone | Office hours | |
|---|---|---|---|---|
| Jim Clarke (L0101, BA 1190, MW noon) | clarke [at] cdf.toronto.edu | BA 4258 | 416-978-4058 | TBA |
| Paul Gries (L5101, BA 1200, W6-8pm) | pgries [at] cdf.toronto.edu | BA 4234 | 416-978-6322 | TBA |
