This course focuses on developing complex programs using an object-oriented language. Students write programs that utilize functions and methods for code modularization and arrays for solving problems. Information hiding, encapsulation, inheritance, polymorphism, exception handling, and other principles of object-oriented programming will be introduced. Core course.