CS304 : Object Oriented Programming

Course Overview

Course Synopsis

This course gives you a thorough grounding in the basics of Object Orientation i.e. Abstraction, Polymorphism, Inheritance, Encapsulation and other related concepts. Students will learn about these concepts in a C++ development environment. It will also give you knowledge about C++ Class and Template Constructs.

Course Learning Outcomes

At the end of the course, you should be able to:

  • Describe Object Oriented Programming
  • Tackle real world problems through Object Oriented Programming
  • Handle Operator overloading
  • Implement Inheritance, Polymorphism, Encapsulation and related features of OOP
  • Handle Constructors & Destructors
  • Implement Generic Programming Concepts and manipulate exception handling


Course Calendar

0 Welcome Note
1 Introduction
2 Starting to OOP
3 Abstraction and Inheritance
4 Introduction to Generalization and Specialization
5 Object-Oriented Modeling
6 Polymorphism in OO Model
Assignment 1
7 Introduction to Objects and Classes (cont...)
8 Constructors
9 Destructors
10 Accessor Functions and "this" Pointer
11 Constant data members and Static Variables
12 Constant data members, Static Variables and Array of objects
Quiz 1
13 "new" Operator, Getter and Setter
14 Composition
15 Composition, Aggregation and Friend Functions
16 Operator overloading
GDB
17 Operator overloading (cont1...)
18 Operator overloading (cont2...)
19 Operator overloading (cont3...)
20 Operator overloading (cont4...)
21 Operator overloading (cont5...)
Quiz 2
22 Inheritance
23 Inheritance (cont1...)
Mid Term Examination
24 Inheritance (cont2...)
25 Overriding
26 Inheritance (cont3...)
27 Inheritance (cont4...)
28 Polymorphism
29 Abstract and Concrete Classes
30 Polymorphism (cont...)
Assignment 2
31 Inheritance (cont5...)
32 Generic Programming
33 Generic Programming (cont...)
34 Generic Algorithms
Quiz 3
35 Generic Algorithms (cont1...)
36 Generic Algorithms (cont2...)
37 Generic Algorithms (cont3...)
38 Templates and Friends
Quiz 4
39 Generic Algorithms (cont4...)
40 Cursors and Vectors
41 Standard Template Library
42 Iterators
43 Techniques for Error Handling
44 Techniques for Error Handling (cont1...)
45 Techniques for Error Handling (cont2...)
Final Term Examination