This document is an introductory lecture on object-oriented programming (OOP) prepared by Mahmoud Rafeek Alfarra. It covers fundamental concepts of OOP, including definitions, comparisons with procedural programming, and principles such as abstraction, encapsulation, inheritance, and polymorphism. Additionally, it includes class discussion prompts and personal contact information for further inquiries.