University of Engineering and Technology Lahore - New Campus (Kala Shah Kaku)
Section Course Outline Report
Department: Computer Science (KSK) Printed Date: January 24, 2024
Section Course Detail
Semester SPRING 2024
Department Computer Science (KSK)
Section C
Subject Title CSC-103L Object Oriented Programming
Subject Domain Engineering
Subject Knowledge Computing
Contact ainie.akram@uet.edu.pk
Measureable Student Learning Outcomes
CLOs Description PLOs Domain Domain Level Assessments
Explain OOP concepts like object, class,
CLO1 data & function members, friend PLO01 Cognitive 2. Understand null
functions, message, abstraction,
Design objects from description
CLO2 implementing their structure and PLO03 Cognitive 6. Create null
behavior by defining data members, and
Appraise optimal static and dynamic
CLO3 usage of memory and protecting memory PLO02 Cognitive 4. Analyze null
breach and wastage.
Interpret lifespan of objects defined as
CLO4 entry into, computational collaboration PLO03 Cognitive 3. Apply null
through messages and exit from logical
Express an object-oriented design in a
CLO5 PLO03 Cognitive 2. Understand null
clear and lucid manner.
Apply principles of encapsulation,
CLO6 abstraction, reusability and extensibility PLO02 Cognitive 3. Apply null
to support collaborative development.
Class Timings
Page 1 of 3
University of Engineering and Technology Lahore - New Campus (Kala Shah Kaku)
Section Course Outline Report
Department: Computer Science (KSK) Printed Date: January 24, 2024
Section Content
Week CLO's
Topics
(Lec)
Functions: prototype, definition, and call. Function parameter types: in, in-out
and out only, value type, reference type. Reference and pointer differentiated.
week1 Runtime code segment and data segment explained. System Heap and Stack CLO1
explained.
Difference between non-structured programming, structured programming and
Object Oriented Programming and problem solving. Where to store Structural,
week2 Behavioral and Capabilities with limitation and constraints. Object oriented CLO2, CLO1
approach to programming with Concepts of Object Orientation, e.g, Protection,
Encapsulation, Abstraction, Messaging.
Migration from modular program having structures and functions to Classes &
Object: syntax and semantics. Implicitly available member functions. Default
week3 constructor, copy constructor, destructor, = assignment operator, & address-of CLO2
operator. Access modifiers: public, private.
Programmer defined constructor, copy constructor, destructor, assignment
week4 operator(=). Overloading constructors. Shallow and deep objects. Constructor’s CLO2
initializer list.
Separate declaration and definition of member functions. Accessors, utility
week5 methods, objects as argument and return type. Cascaded calls to functions. CLO3, CLO2
Static members, const members, objects members; Constructor’s initializer list
week6 revisited; uses of implicit this pointer/reference or me reference CLO3
Arrow ( -> ) operator, dynamic memory allocation with new operator to
week7 instantiate objects in the system heap and de-allocation of object memory with CLO3
delete operator.
Operator Overloading: operator as member functions; operators as friend
week8 functions; Cascaded calls to operator functions; Restriction on friend operator CLO4, CLO5
functions [],(), ->
Composition and related concepts; Has-a relationship. Complex object. Partial
week9 classes. CLO4
week10 Composition Cont. (Association and Aggregation). CLO4
Page 2 of 3
University of Engineering and Technology Lahore - New Campus (Kala Shah Kaku)
Section Course Outline Report
Department: Computer Science (KSK) Printed Date: January 24, 2024
Section Content
Week CLO's
Topics
(Lec)
Inheritance: private and protected access modifiers. Is-a Relationship of base
week11 class and derived classes, Derived class functions overloading. Data member CLO5
domination.
Inheritance: Member function overriding; virtual functions; pure virtual
week12 functions. CLO5
Abstract classes; Concrete classes; Class hierarchy. Multiple inheritance;
week13 Diamond head problem. CLO6
week14 Polymorphism: how to implement; compilation advantage. CLO6
CLO4, CLO6,
week15 Revision CLO2, CLO5,
CLO3, CLO1
Page 3 of 3