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

Starting to OOP2Handouts15
Abstraction and Inheritance3Handouts21
Introduction to Generalization and Specialization4Handouts29
Object-Oriented Modeling5Handouts40
Polymorphism in OO Model6Handouts55
Assignment No. 1
Introduction to Objects and Classes (cont...)7Handouts65
Accessor Functions and "this" Pointer10Handouts99
Constant data members and Static Variables11Handouts105
Constant data members, Static Variables and Array of objects12Handouts112
new Operator, Getter and Setter13Handouts118
Composition, Aggregation and Friend Functions15Handouts132
Assignment No. 2
Operator overloading16Handouts142
Operator overloading (cont1...)17Handouts149
Operator overloading (cont2...)18Handouts155
Operator overloading (cont3...)19Handouts158
Operator overloading (cont4...)20Handouts163
Quiz No.1
Operator overloading (cont5...)21Handouts168
Inheritance (cont1...)23Handouts183
Mid Term Exams
Inheritance (cont2...)24Handouts195
Inheritance (cont3...)26Handouts213
Inheritance (cont4...)27Handouts218
Abstract and Concrete Classes29Handouts233
Assignment No. 3
Polymorphism (cont...)30Handouts243
Inheritance (cont5...)31Handouts250
Generic Programming32Handouts258
Generic Programming (cont...)33Handouts264
Generic Algorithms34Handouts270
Generic Algorithms (cont1...)35Handouts276
Generic Algorithms (cont2...)36Handouts282
Generic Algorithms (cont3...)37Handouts288
Templates and Friends38Handouts296
Generic Algorithms (cont4...)39Handouts303
Cursors and Vectors40Handouts309
Quiz No. 2
Standard Template Library41Handouts316
Techniques for Error Handling43Handouts334
Techniques for Error Handling (cont1...)44Handouts342
Techniques for Error Handling (cont2...)45Handouts349
Final Term Exams
* This is tentative schedule and may be subject to change
Back to Top