Object-orientation continues to be a dominant approach to software development. This intermediate programming-intensive course studies the use of classes and objects with an emphasis on collaboration among objects.
Outcome
A thorough understanding of the principles of object-orientation: abstraction, delegation, inheritance, and polymorphism; exposure to basic design patterns; programming experience in mainstream object-oriented languages such as C++ and Java.