IT-106 ObjectOrientedProgrammingOutline
IT-106 ObjectOrientedProgrammingOutline
Gujrat
Faculty of CS & IT
a) The teacher is responsible for the evaluation of work of the students of his/her class
and for the grades on the basis of such evaluation.
b) The number and nature of tests and assignments depends on the nature of the
course. However, there will be at least two tests, mid semester and final
examination in addition to class work.
Evaluation System c) Each course will follow the weight age as under:
Mid term 25%
Sessional work 25%
Final term 50%
d) To pass a course, student must obtain ‘D’ grade (50% marks) with at least 20%
marks separately in (i) mid term + sessional work and (ii) final term.
e) The final term examination will cover the entire course.
COURSE OUTLINE
• Beginning of programming
1 • Structured programming
• Why Do We Need Object-Oriented Programming? Object oriented
programming
Structure Chp 4
• Sturcutre basics
• Sturucture within structure
• Structures and classes
• Enumerations,
3
2
• Software Engineering Case Study: examining the ATM Requirements
Document
Objects and classes o Basics of class and objects with real world Chp 6
example o Basics of class and objects with
4 programming example
o Data member and member function
o Access specifier
• C++ objects as data types
• Constructors
• Destructors
3 5
6
Object as function argument o Overloaded
constructor o Member functions defined
outside the class o Objects as arguments
• The default copy constructor
• Returning objects from function
7
• Class, object and memory
4 • Static class data
• Const and classes o Const member functions o Const
objects
• Software Engineering Case Study: identifying the classes in the ATM
Requirements Document,
8 • Identifying the class Attributes
• Objects states and activates
7
Inheritance: Chp 9
• Inheritance basics in real world and programming
• Derived class and base class o public, private &
14 protected, Abstract Classes o Specifying the derived
class o Accessing base class members o The
protected access specifier
• Multiple inheritance
• Ambiguity in multiple inheritance
• Containership: classes within class o Composition and
9 17
aggregation
• Inheritance and program development
Mid term
Pointers Chp 10
• Pointer basics concepts
• Addresses and pointers
• The address of operator
• Pointer and arrays
18 • Pointers and functions
10 • Pointers and ctype string
• Memory management: new and delete o The new opearaotr o The
delete operator o A string class using new
• Pointer to objects
19
• Pointers to pointers
Virtual functions Chp 11
Virtual functions o Normal member function accessed with
20 pointer o Normal member function accessed without
pointer o virtual member function accessed with
11 pointer o Virtual member functions accesses without
pointer o Late binding
o Abstract classes and pure virtual functions
21 o Virtual destructors o Virtual base
classes
• Friend functions
• Friend classes
22
• Static functions
• The this pointer
12 23 Polymorphism, Revision of
Type of Polymorphism – o previous topics
Compile time and with respect to
polymorphism
runtime, o Function
Overloading,
o Operator Overloading (Unary and Binary) Polymorphism by
parameter,
o Pointer to objects, o
this pointer, o
Virtual Functions, o
24
Pure virtual
13 functions.
14 26
•
•
Disk file I/O with streams
File pointers
• Error handling in file I/O
27 • File I/O with member functions
Chp 13
Multifile programs
28 • Reason for multifile program
15 • Creating a multifile program
o Header file o
29 Directory o Projects Case
study
32 Revision