Course Description
This course focuses on Object-Oriented (OO) program design. Students will design programs using classes and objects. They will implement solutions that take advantage of Object-Oriented features including generics, inheritance, and polymorphism by using the Java programming language.
Students will use UML notation as a means to describe OO designs. Additionally, they will analyze, implement, and critique common design patterns.
Prerequisites
CS5001 Intensive Fundamentals of Computer Science.