DC is committed to providing students with a high-quality academic experience. All scheduled academic activities and services, including on-campus learning through classes and labs, continue as planned while Durham Region is under red-zone restrictions. For a full list of what is open on campus or operating virtually, please visit our COVID-19 winter semester page.
Learn more about courses and services being offered remotely. COVID-19 Pre-entry Screening Questionnaire Report if you are unwell


Object-oriented programming is the predominate approach to modern software design and development due in part to its focus on modelling, code re-usability, ease of maintenance and revision, as well of the vast selection of languages and tools available that support OOP. This course builds on the fundamental object-oriented programming concepts presented in OOP I, and provides students with hands-on experience with C++ and Java. Students will use ISO (Standard) C++ to examine encapsulation through classes and objects, as well to explore class inheritance, polymorphism including virtual functions and abstract classes, collection classes and generics, and the C++ standard template library. The later part of the course is an introduction to Java, which is a platform-independent object-oriented programming language. Students will create Java applications implementing commonly used Java classes/packages while reinforcing their understanding of key object-oriented concepts and principles.