Object Oriented Programming (OOP) Course Content

Here is Course Content of OOP along with Marks Distribution. Practice Well!

Marks Distribution

ChaptersHoursMarks
1, 2, 41120
3610
5510
6510
8510
7, 9, 101320
Total4580
OOP Course Content/Marks Distribution – Notes IOE

1. Introduction to Object Oriented Programming

  • Issues with Procedure Oriented Programming
  • Basic of Object Oriented Programming (OOP)
  • Procedure Oriented versus Object Oriented Programming
  • Concept of Object Oriented Programming
    1. Object
    2. Class
    3. Abstraction
    4. Encapsulation
    5. Inheritance
    6. Polymorphism
  • Example of Some Object Oriented Languages
  • Advantages and Disadvantages of OOP

2. Introduction to C++

  • The Need of C++
  • Features of C++
  • C++ Versus C
  • History of C++

3. C++ Language Constructs

  • C++ Program Structure
  • Character Set and Tokens
    1. Keywords
    2. Identifiers
    3. Literals
    4. Operators and Punctuators
  • Variable Declaration and Expression
  • Statements
  • Data Type
  • Type Conversion and Promotion Rules
  • Preprocessor Directives
  • Namespace
  • User Defined Constant const
  • Input/Output Streams and Manipulators
  • Dynamic Memory Allocation with new and delete
  • Condition and Looping
  • Functions
    1. Function Syntax
    2. Function Overloading
    3. Inline Functions
    4. Default Argument
    5. Pass by Reference
    6. Return by Reference
  • Array, Pointer and String
  • Structure, Union and Enumeration

4. Objects and Classes

  • C++ Classes
  • Access Specifiers
  • Objects and the Member Access
  • Defining Member Function
  • Constructor
    1. Default Constructor
    2. Parameterized Constructor
    3. Copy Constructor
  • Destructors
  • Object as Function Arguments and Return Type
  • Array of Objects
  • Pointer to Objects and Member Access
  • Dynamic Memory Allocation for Objects and Object Array
  • this Pointer
  • static Data Member and static Function
  • Constant Member Functions and Constant Objects
  • Friend Function and Friend Classes

5. Operator Overloading

  • Overloadable Operators
  • Syntax of Operator Overloading
  • Rules of Operator Overloading
  • Unary Operator Overloading
  • Binary Operator Overloading
  • Operator Overloading with Member and Non Member Functions
  • Data Conversion: Basic – User Defined and User Defined – User Defined
  • Explicit Constructors

6. Inheritance

  • Base and Derived Class
  • protected Access Specifier
  • Derived Class Declaration
  • Member Function Overriding
  • Forms of Inheritance: single, multiple, multilevel, hierarchical, hybrid, multipath
  • Multipath Inheritance and Virtual Base Class
  • Constructor Invocation in Single and Multiple Inheritances
  • Destructor in Single and Multiple Inheritances

7. Polymorphism and Dynamic Binding

  • Need of Virtual Function
  • Pointer to Derived Class
  • Definition of Virtual Functions
  • Array of Pointers to Base Class
  • Pure Virtual functions and Abstract Class
  • Virtual Destructor
  • Reinterpret_cast Operator
  • Run‐Time Type Information
    1. dynamic cast Operator
    2. typed Operator

8. Stream Computation for Console and File Input /Output

  • Stream Class Hierarchy for Console Input /Output
  • Testing Stream Errors
  • Unformatted Input /Output
  • Formatted Input /Output with ios Member functions and Flags
  • Formatting with Manipulators
  • Stream Operator Overloading
  • File Input/output with Streams
  • File Stream Class Hierarchy
  • Opening and Closing files
  • Read/Write from File
  • File Access Pointers and their Manipulators
  • Sequential and Random Access to File
  • Testing Errors during File Operations

9. Templates

  • Function Template
  • Overloading Function Template
    1. Overloading with Functions
    2. Overloading with other Template
  • Class Template
    1. Function Definition of Class Template
    2. Non‐Template Type Arguments
    3. Default Arguments with Class Template
    4. Derived Class Template
    5. Introduction to Standard Template Library
      1. Containers
      2. Algorithms
      3. Iterators

10. Exception Handling

  • Error Handling
  • Exception Handling Constructs (try, catch, throw)
  • Advantage over Conventional Error Handling
  • Multiple Exception Handling
  • Rethrowing Exception
  • Catching All Exceptions
  • Exception with Arguments
  • Exceptions Specification for Function
  • Handling Uncaught and Unexpected Exceptions

Notes IOE – Taking learning seriously but not Ourselves!Do follow our Facebook and Instagram

Leave a Reply

Your email address will not be published. Required fields are marked *