Object Oriented Programming
Object Oriented Programming
(ES 04)
Objectives:
The course is design to meet with the objectives of:
1. Learning to program in an object-oriented programming language.
2. It is also suitable for those who already have some experience with another
programming language, and who wish to move on to an object-oriented
one.
3. The language we will teach for object-oriented programming is C++.
Module 1:
Basic features & Concepts of Object Oriented Programming (OOP), Benefits
& Applications of OOPs, Structure of a C++ Program, Tokens, Keywords,
Identifiers, Constants, Basic Data Types, User-defined Data-Types, Derived
Data Types, Symbolic Constants, Type Safety, Dynamic Initialization of
variables, Reference Variables, Scope Resolution Operators, Memory
Management Operators, Manipulators, Type Cast Operators, Expressions and
their types, Special Assignment Expressions, Enumerations, Control Structures,
Functions in C++, The Main function, function prototyping, reference calls,
reference returns, Inline functions, default functions, default and constant
arguments, function overloading, Statements in C++, Standard Input/output
controls, Input/output error handling.
Module 2:
General overview of Objects & Classes, Specifying a class, defining member
functions within a class, Class Implementations, Nesting of member functions,
private member functions, Array within a class, local classes, interface classes,
abstract classes, Declarations of objects, Memory allocation for objects, arrays
of objects, objects as function arguments, Returning objects, pointers to
members, accessing of members, and Dynamic initialization of objects,
Operator Overloading, Operator Precedence, Method Overloading, Method
Overriding, Constructors, Parameterized Constructors, Constructors with
Default arguments, Dynamic Constructors and copy constructors, Destructors
Overview, Dynamic Destructors, Generated Destructors, Introduction to
overloading operators, Rules of overloading operators, overloading binary and
unary operators, Type Conversions, Data Abstraction, Data Encapsulation,
Implicit and Explicit Interface Implementations.
Module 3:
Introduction and General overview of Inheritance, Inheritance using base
classes, derived classes and subclasses, Public/Protected/Private inheritance,
Constructors & Destructors in derived classes, Categories of Inheritance, single,
4.
5.
6.
7.
8.
9.