CS 116 - Software Design Project
Course Readings

There are two required textbooks for the course, and four that are recommended.

Required Texts

C# 3.0 Design Patterns, Judith Bishop, O'Reilly, 2008.

Refactoring: Improving the Design of Existing Code, Martin Fowler, with contributions by Kent Beck, John Brandt, William Opdyke, and Don Roberts, Addison-Wesley, 1999.

Recommended Texts

Design Patterns: Elements of Reusable Object-Oriented Software, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Addison-Wesley, 1995.

This book is also known as the "Gang of Four" (GoF) book. It is the classic introduction to design patterns, and a strong source of material for the patterns it describes. One critique of the GoF book is the example code is given in C++ and Smalltalk, and requires some adaptation to use with Java and C#.

The Design Patterns Java Companion, James W. Cooper, 1998.

This book provides the GoF design patterns with Java examples. It is freely available online.

XNA Game Studio Express: Developing Games for Windows and the Xbox 360, Joseph Hall, Thomson Course Technology, 2007.

An introduction to programming in XNA Game Studio Express, with good coverage of 2D game creation.

Programming C#, 4th or 5th Edition OK, Jesse Liberty, O'Reilly, 2005 (4th) & 2007 (5th).
A limited preview via Google Books
The complete text of the 4th edition via O'Reilly Safari (on-campus only).

A good introductory text on C# programming for those who already know one or more object-oriented languages.