CS *251: Intermediate Software Design

Douglas C. Schmidt
Professor of Computer Science
School of Engineering
Vanderbilt University

Table of Contents

oCourse Philosophy
oCourse Logistics
oCourse Prerequisites
oCourse Material

Course Philosophy

Good design and programming techniques and practices are not best learned through generalities and platitudes. Instead, it's more effective to see by example how significant programs can be made easier to write and read, easier to maintain and modify, and more efficient and resilient via the application of time-proven software patterns and advanced design/programming techniques.

Course Logistics

Course Prerequisites

Course Material

The following are electronic versions of the CS *251 course material.

Back to Douglas C. Schmidt's list of CS courses.