BSc CSIT · Semester II
Object Oriented Programming syllabus
Official TU syllabus for Object Oriented Programming (CSC166): 8 units, 67 topics, 3 credit hours. Every unit links to its notes and solved questions.
1
Introduction to Object Oriented Programming
3h · 4 Q- Overview of structured programming approach
- Object oriented programming approach
- Characteristics of object oriented languages
2
Basics of C++ programming
5h · 12 Q- C++ Program Structure
- Character Set and Tokens
- Data Type
- Type Conversion
- Preprocessor Directives
- Namespace
- Input/Output Streams and Manipulators
- Dynamic Memory Allocation with new and delete
- Control Statements
- Functions: Function Overloading, Inline Functions, Default Argument, Pass by Reference, Return by Reference, Scope and Storage Class
- Pointers: Pointer variables declaration & initialization, Operators in pointers, Pointers and Arrays, Pointer and Function
3
Classes & Objects
8h · 12 Q- A Simple Class and Object
- Accessing members of class
- Initialization of class objects: (Constructor, Destructor)
- Default Constructor
- Parameterized Constructor
- Copy Constructor
- The Default Copy Constructor
- Objects as Function Arguments
- Returning Objects from Functions
- Structures and Classes
- Memory allocation for Objects
- Static members
- Member functions defined outside the class
4
Operator Overloading
7h · 8 Q- Fundamental of operator overloading
- Restriction on operator overloading
- Operator functions as a class members
- Overloading unary and binary operator
- Data Conversion (basic to basic, basic to user-defined, user-defined to basic, user-defined to user-defined)
5
Inheritance
7h · 9 Q- Introduction to inheritance
- Derived Class and Base Class
- Access Specifiers (private, protected, and public)
- Types of inheritance
- Public and Private Inheritance
- Constructor and Destructor in derived classes
- Aggregation
6
Virtual Function, Polymorphism, and miscellaneous C++ Features
5h · 10 Q- Concept of Virtual functions
- Late Binding
- Abstract class and pure virtual functions
- Virtual Destructors
- Virtual base class
- Friend function and Static function
- Assignment and copy initialization
- Copy constructor
- This pointer
- Concrete classes
- Polymorphism and its roles
7
Function Templates and Exception Handling
4h · 9 Q- Function templates
- Function templates with multiple arguments
- Class templates
- templates and inheritance
- Exceptional Handling (Try, throw and catch)
- Use of exceptional handling
8
File handling
6h · 8 Q- Stream Class Hierarchy for Console Input/Output
- Unformatted Input/Output
- Formatted Input/Output with ios Member functions
- Formatting with Manipulators
- Stream Operator Overloading
- File Input/output with Streams
- 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
Textbooks and references
- Robert Lafore, Object Oriented Programming in C++, Fourth Edition, SAMS publications.
- Herbert Schildt, C++ The Complete Reference, Fourth Edition, Tata McGraw Hill Publication.
- Deitel and Deitel, C++ How to Program, Third Edition, Pearson Publication.
- Joyce Farrell, Object-oriented programming using C++, Fourth Edition, Cengage Learning.
Study CSC166 the smart way
Solved questions, flashcards & practice