Object Oriented Programming (CSC304)
12 units: Course Introduction- Concepts of Object Oriented Programming, Object Oriented Terminologies- Class concept, Basic Input/Output in C++, Basic C++ features, Pointers & References in C++- Basic operations on pointers · L-T-P 3-1-0.
Detailed syllabus
Unit 1: Course Introduction- Concepts of Object Oriented Programming (2 hours)
Course Introduction- Concepts of Object Oriented Programming, Procedural approach, Limitation of Procedural Language, Object concept
Unit 2: Object Oriented Terminologies- Class concept (4 hours)
Object Oriented Terminologies- Class concept, ADT, encapsulation, Cardinality, Data hiding, Inheritance, Polymorphism, Advantages of OOPs, Advantages of OOPs, difference between Procedural and Object Oriented Language, Evolution of C++
Unit 3: Basic Input/Output in C++ (3 hours)
The 1st C++ Program (temperature conversion), compilation, Input stream and output stream, Advantages of cin a cout over pritnf and scanf
Unit 4: Basic C++ features (5 hours)
Literals, Constants, Manipulators, Assertions, Enumerated Data Types, Scope resolution operator
Unit 5: Pointers & References in C++- Basic operations on pointers (7 hours)
Pointers & References in C++- Basic operations on pointers, Array of pointers, pointer to an array, self referential structures, References in C++ , use of references
Unit 6: Dynamic memory allocation/deallocation (5 hours)
Use of new and delete operator, multi- dimensional array allocation, Examples
Unit 7: Constructor and Destructor (2 hours)
Constructor and Destructor, Various examples of constructors, Constructor Salient Features, Destructors,, Examples
Unit 8: Functions in C++ (5 hours)
Functions in C++; Overloading- function call, Macros, and it‘s limitations, Inline function, Function Overloading, Constructor Overloading, Examples, Function with Default arguments, Various Examples of Default arguments
Unit 9: Writing C++ Classes- Class (5 hours)
Writing C++ Classes- Class, C++ class vs Structure, This pointer, Memory Layout of C++ program, Static member of class. Static Member Functions, Static Object, Examples
Unit 10: C++ Constants Revisited (2 hours)
Storage Allocation, Constants and References, Constant member data and Functions, Constants Objects, Examples
Unit 11: Friend Function & Operator Overloading (6 hours)
Friend Functions, Use of friend functions, friends as bridges, Various examples, Operator Overloading, examples, advantages of friend functions during overloading
Unit 12: Templates in C++ (5 hours)
Templates in C++, Generic function and classes, examples, syntax of a template, Template class
Source: official document