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

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
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
13 "new" Operator, Getter and Setter
14 Composition
15 Composition, Aggregation and Friend Functions
16 Operator overloading
17 Operator overloading (cont1...)
18 Operator overloading (cont2...)
19 Operator overloading (cont3...)
20 Operator overloading (cont4...)
21 Operator overloading (cont5...)
22 Inheritance
23 Inheritance (cont1...)
24 Inheritance (cont2...)
25 Overriding
26 Inheritance (cont3...)
27 Inheritance (cont4...)
28 Polymorphism
29 Abstract and Concrete Classes
30 Polymorphism (cont...)
31 Inheritance (cont5...)
32 Generic Programming
33 Generic Programming (cont...)
34 Generic Algorithms
35 Generic Algorithms (cont1...)
36 Generic Algorithms (cont2...)
37 Generic Algorithms (cont3...)
38 Templates and Friends
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...)