The document provides an introduction to Object Oriented Programming (OOP) focusing on its basic concepts such as objects, encapsulation, inheritance, polymorphism, and aggregation, specifically in the context of C++. It discusses the importance of modularity, reusability, and extensibility in software development and outlines the historical development of C++. Additionally, it provides a module outline and references for further reading on C++ and OOP.