The goal of CPSC 128 is to introduce the student to the design and implementation of object-oriented software. To this end it covers: techniques, methods, and tools for systematic development and maintenance of software systems and documentation; basic algorithms and data structures; and fundamental concepts of object-oriented programming. The bulk of the course is spent practicing program design as new elements are added to the student's knowledge of an OOP language. Good programming practices are emphasized throughout, including: top-down design, modularization, code re-use, debugging techniques, and creating useful documentation.
Prerequisite: Math 11. While no previous programming experience is required, any such experience is helpful.