CS/SWE 332 Course Syllabus
Object-Oriented Software Design and Implementation
Fall 2016
Course Description
In-depth study of software design and implemenation using a modern,
object-oriented language with support for graphical user interfaces
and complex data structures.
Topics covered will be specifications, design patterns,
and abstraction techniques,
including typing, access control, inheritance, and polymorphism.
Students will learn the proper engineering use of techniques such
as information hiding, classes, objects, inheritance,
exception handling, event-based systems, and concurrency.
Professor: Paul Ammann
Course Outcomes
-
Demonstrate ability to specify and analyze stand-alone procedures
and OO classes.
-
Demonstrate ability to specify and analyze OO inheritance decisions.
-
Demonstrate ability to convert mutable data types to
immutable data types and vice versa.
-
Demonstrate ability to correctly create and destroy OO objects.
-
Demonstrate understanding and competence in generic programing.