ScholarQuill logoScholarQuillUniversity Notes
My Semester
Explore Notes
Past Papers12 New
Video CoursesNew
Search
Settings
Study Tools
GPA/CGPA Calculator
Schedule & To-Do
Student Portal
Contact
Contact
ScholarQuill logo
My Semester
Explore Notes
Past Papers12 New
Video CoursesNew
Search
Settings
GPA/CGPA Calculator
Schedule & To-Do
Student Portal
Contact
ScholarQuill logoScholarQuillUniversity Notes
Study PortalCOMP2111Object Oriented Design…
Ctrl + K
Login
Explore
Search
Semester
Papers
CGPA
    COMP2111

    Object Oriented Programming

    Progress0 / 23 done
    Topics23
    1Introduction to object oriented design2History and advantages of object oriented design3Introduction to object oriented programming concepts4Classes and objects5Data encapsulation6Constructors and destructors7Access modifiers8Const vs non-const functions9Static data members & functions10Function overloading11Operator overloading12Identification of classes and their relationships13Composition and aggregation14Inheritance15Multiple inheritance16Polymorphism17Abstract classes and interfaces18Generic programming concepts19Function & class templates20Standard template library21Object streams22Data and object serialization using object streams23Exception handling
    2 min read
    Topic 1 of 23
    Topic Study Note Illustration
    01

    Introduction to object oriented design

    Object-Oriented Programming (OOP) – Introduction to Object-Oriented Design

    Object-Oriented Programming (OOP) – Introduction to Object-Oriented Design

    Object-oriented design is a way of planning and organizing software by focusing on real-world concepts. In this method, software is built around objects, which are like small programs that have their own data and functions. These objects work together to solve a problem or perform a task.

    In traditional programming (called procedural programming), the focus is on writing functions and procedures that operate on data. But in object-oriented programming, the focus is on creating objects that hold both data and behavior. This makes the program more organized, reusable, and easier to manage.

    Main Ideas in Object-Oriented Design:

    1. Classes and Objects
      A class is a blueprint or template for creating objects. It defines what data (called attributes) and what actions (called methods or functions) an object will have.
      An object is an actual instance of a class. It has real values and can perform actions.

    2. Encapsulation
      Encapsulation means keeping the data (variables) and code (functions) together inside an object. It also means hiding the internal details of how an object works, so that the outside world can only use what is necessary. This protects the data and makes the code easier to change and maintain.

    3. Abstraction
      Abstraction means focusing on important features and ignoring the details. For example, when using a mobile phone, we only need to know how to use the apps, not how the circuits inside work. Similarly, in programming, we create simple interfaces for users and hide the complex inner workings.

    4. Inheritance
      Inheritance allows a class to use the properties and methods of another class. The new class is called a derived or child class, and the class it inherits from is called a base or parent class. This helps to reuse code and build a relationship between classes.

    5. Polymorphism
      Polymorphism means the ability to take many forms. In programming, it allows functions or methods to behave differently based on the object that is calling them. It helps in writing flexible and easily extendable code.

    Benefits of Object-Oriented Design:

    • Makes programs easier to understand and manage
    • Encourages code reuse through inheritance
    • Easier to make changes without affecting other parts of the program
    • Allows better structure and organization of code

    Object-oriented design is widely used in modern software development because it helps build large, complex programs in a clear and efficient way.

    Next topic 2 →
    History and advantages of object oriented design

    Past Papers

    Open this section to view and download past papers

    Click on Show Past Papers to load available exam papers.

    Reading Progress
    0%
    2mremaining
    391words
    Beginnerlevel
    On This Page

    No headings found

    Study Toolkit

    Subject Portal

    Object Oriented Programming