Object Oriented Programming LAB
Object Oriented Programming LAB
Page 1 of 4
Laboratory Plan – CC-211L – Object Oriented Programming Laboratory Department of Information Technology, University of the Punjab
Recommendations for
Week No.
Learning Activities
Lab No.
Source
(Mention Assignments, Test,
Topic Book-Chapter No. (Sections /
Quizzes, Practical, Case Study,
Pages)
Projects, Lab Work or Reading
Assignments)
Introduction to C++ (I): OOP (Classes Objects and Getters
Setters)
• Brief description of C++ concepts Examples given in A – Ch.1 and
LAB Manual – I
• Introduction to OOP Ch.3
1 1 A – Ch. 1 (1.8)
• Concept of Encapsulation and Abstraction Programming Challenges in A –
A – Ch. 3 (3.1 to 3.3)
• Class and Object Ch. 1 and Ch. 3
• Getter/Setter Member Functions
• Public private access specifiers
Introduction to C++ (II): (Constructors and other Member
Functions)
• Constructors LAB Manual – II
Examples given in A – Ch. 3, Ch.6
• Overloaded Constructor A – Ch. 3 (3.1 to 3.3)
and Ch. 9
2 2 • Default Constructor A – Ch. 3 (3.4), Ch. 9 (9.6 to
Programming Challenges in A –
• Destructor 9.8)
Ch. 3, Ch. 6 and Ch. 9
• Inline Functions A - Ch.6 (6.12, 6.16, 6.17)
• Function Overloading
• Function Templates
Introduction to C++ (III): (Class Templates array
/Multidimensional Array/ Vectors)
LAB Manual – III Examples given in A – Ch. 7
• Class Templates array
3 3 A - Ch.7 (7.1 – 7.7) Programming Challenges in A –
• Sorting & Searching
A - Ch.7 (7.8 – 7.10) Ch. 7
• Multidimensional arrays
• Vector
OOP Primitives and Composition / Aggregation
• Returning Reference to private Data Members
LAB Manual – IV Examples given in A – Ch. 9
• Default Member-wise Assignment
4 4 A – Ch. 9 (9.1 to 9.10) Programming Challenges in A –
• const Objects
A – Ch. 9 (9.11 to 9.12) Ch. 9
• const Member Functions
• Object Composition and Aggregation
Page 2 of 4
Laboratory Plan – CC-211L – Object Oriented Programming Laboratory Department of Information Technology, University of the Punjab
Page 3 of 4
Laboratory Plan – CC-211L – Object Oriented Programming Laboratory Department of Information Technology, University of the Punjab
Polymorphism
• Virtual Functions Examples given in A – Ch. 12
LAB Manual – XI
11 11 • Virtual Destructors Programming Challenges in A –
A – Ch. 12 (12.4,12.6, 12.7)
• Pure Virtual Functions Ch. 12
• Abstract and Concrete Classes
File Processing
• Files and Streams
• Create a Sequential File
LAB Manual – XII
• Read a Sequential File Examples given in A – Ch. 14
A – Ch. 14 (14.1 to 14.10)
12 12 • Update a Sequential File Programming Challenges in A –
• Random Access File Ch. 14
• Create a Random-Access File
• Read a Random-Access File
• Update a Random-Access File
Exception Handling
• Introduction LAB Manual – XIII Examples given in A – Ch. 17
13 13 • Flow of Control A – Ch. 17 (17.1 to 17.3 and Programming Challenges in A –
• Rethrowing an Exception 17.7) Ch. 17
• Constructor Destructor and Exception handling
Custom Templates - I
• Introduction
Examples given in A – Ch. 18
• Class Templates LAB Manual – XIV
14 14 Programming Challenges in A –
• Function Templates A – Ch. 18 (18.1 to 18.5)
Ch. 18
• Arguments to Templates
• Overloading Function Templates
Standard Library I
• Containers
Examples given in A – Ch. 15
• Iterators LAB Manual – XV
15 15 Programming Challenges in A –
• Adapters A – Ch. 15 (15.1 to 15.6)
Ch.15
• Sequence Containers
• Associative Containers
Standard Library II
Examples given in A – Ch. 15 and
• Container Adapters LAB Manual - XVI
Ch. 16
16 16 • Minimum Iterator Requirements A – Ch. 15(15.7 to 15.8)
Programming Challenges in A –
• Lambda Expressions A – Ch. 16 (16.1 to 16.7)
Ch. 15 and Ch. 16
• Function Objects
FINAL TERM EXAM
Page 4 of 4