Course Details

CS 257: Software Design

It's easy to write a mediocre computer program, and lots of people do it. Good programs are quite a bit harder to write, and are correspondingly less common. In this course, we will study techniques, tools, and habits that will improve your chances of writing good software. While working on several medium-sized programming projects, we will investigate code construction techniques, debugging and profiling tools, testing methodologies, UML, principles of object-oriented design, design patterns, and user interface design. Prerequisite: Computer Science 201 or instructor permission
6 credits; FSR; Offered Fall 2021, Winter 2022, Spring 2022; J. Ondich, A. Csizmar Dalal, A. Vostinar