
This course introduces the fundamental concepts of Object-Oriented Programming (OOP) and compares them with procedural programming techniques. Students will learn how to design and develop programs using classes, objects, functions, and member functions. The course covers important OOP principles such as encapsulation, abstraction, inheritance, and polymorphism through practical examples and coding exercises. The lectures include detailed explanations of classes, object-oriented design, functions, and member functions along with practice questions, class scenarios, and lab-based user input programs. Students will gain hands-on experience in writing, executing, and debugging programs using object-oriented approaches. By the end of the course, learners will be able to understand the difference between procedural and object-oriented programming, create and use classes and objects effectively, implement functions and member functions in programs, design simple object-oriented applications, solve programming problems using OOP concepts, and execute and test programs with user input handling. The course also improves logical thinking, coding efficiency, software design understanding, and problem-solving abilities required for developing real-world applications and modern software systems. Students will additionally develop analytical skills, program structuring techniques, and confidence in implementing reusable and maintainable software solutions effectively. This course is suitable for beginners who want to build a strong foundation in object-oriented software development and programming problem-solving skills.