This course introduces the principles of object-oriented programming (OOP) and its application to problem solving and software design. Students learn to model real-world entities using classes and objects, utilize encapsulation, inheritance, polymorphism, and abstraction, and apply these principles in developing robust and maintainable software systems using C++.