0% found this document useful (0 votes)
39 views

CS111-Object Oriented Programming

The document provides details about a course on object oriented programming including the course code, title, credits, prerequisites, textbooks, reference materials, course outlines, learning outcomes mapped to program outcomes, weekly topics, and lab work.

Uploaded by

Yasir Mahmood
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

CS111-Object Oriented Programming

The document provides details about a course on object oriented programming including the course code, title, credits, prerequisites, textbooks, reference materials, course outlines, learning outcomes mapped to program outcomes, weekly topics, and lab work.

Uploaded by

Yasir Mahmood
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

IoC, Board of Studies 2023 Course Descriptions

Course Details
Code Course Title Crd Hrs. Pre-Requisite
CS111 Object Oriented Programming 4(3+1) CS102(PF)

Course Introduction
The course aims to focus on object-oriented concepts, analysis and software development. The basic
concept of OOP is covered in this course.

Textbooks
1 Paul Deitel, Harvey Deitel. Java How to Program, Early Objects, 11th Edition, Peason, (2017), ISBN:
978-0134743356
2 Nick Samoylov. Learn Java 17 Programming: Learn the fundamentals of Java Programming with this
updated guide with the latest features, 2nd Edition, Packet Publishing, (2022),ISBN: 978-
1803241432

Reference material/ Online Resources


1 Online Tutorial - https://www.w3schools.com/cpp/cpp_oop.asp
2 Online Compiler - https://ideone.com/xA0en6

Course Outlines
Introduction to object oriented design, history and advantages of object oriented design, introduction
to object oriented programming concepts, classes, objects, data encapsulation, constructors,
destructors, access modifiers, const vs non-const functions, static data members & functions, function
overloading, operator overloading, identification of classes and their relationships, composition,
aggregation, inheritance, multiple inheritance, polymorphism, abstract classes and interfaces, generic
programming concepts, function & class templates, standard template library, object streams, data and
object serialization using object streams, exception handling.

Course Learning Outcomes (CLOs)


# CLOs BT Level
CLO 1 Understand principles of object oriented paradigm C2(Comprehension)
CLO 2 Identify the objects & their relationships to build object oriented C3 (Application)
solution
CLO 3 Model a solution for a given problem using object oriented principles C3(Application)
CLO 4 Examine an object oriented solution C4(Analysis)

Mapping of CLOs to Program Learning Outcomes (PLOs)


# PLOs CLO1 CLO2 CLO3 CLO4
1 Academic Education ✓
2 Knowledge for Solving Computing Problems ✓
3 Problem Analysis ✓
4 Design/Development of Solutions ✓
5 Modern Tool Usage ✓
6 Individual and Teamwork ✓ ✓
7 Communication
8 Computing Professionalism and Society ✓ ✓
9 Ethics
10 Life-long Learning ✓ ✓

33
IoC, Board of Studies 2023 Course Descriptions

Course Contents
Week Topics Covered
1 Introduction to object-oriented design, history and advantages of object-oriented design
2 Introduction to object-oriented programming concepts, Basic UML, Primitive vs Reference
Types, Memory Models, Initializing Objects, Encapsulation, Constructors and Method
overloading, Default and no argument constructors.
3 V
4 aObjects and classes, Access modifiers, Data encapsulation, constructors, destructors
5 Static data members & functions, const vs non-const functions
6 Identification of classes and their relationships, memory models, Composition, aggregation
7 Inheritance, class hierarchies, super classes and subclasses
8 inheritance, multiple inheritance, constructors in subclasses, Function overloading, Operator
overloading
9 Exception Handling
10 Polymorphism – abstract and concrete classes
11 Polymorphism - constructor overloading, interfaces. Case Study
12 Strings and string operations
13 Graphical User Interfaces, 2D graphics
14 Databases with GUI
15 File Handling and working with data
16 Collections

Lab Work
Week Tasks
1 IDE installation and running the first program
2 Variable, data types, basic arithmetic and input output operations
3 Object declaration, accessing class members through objects, initialization through constructors
4 Member functions, setters and getters
5 Static data members and functions
6 Composition. User defined data types
7 Inheritance – creating sub classes
8 Inheritance – super and subclass constructors
9 Exception handling
10 Polymorphism – abstract classes
11 Interfaces. OOP based case study
12 String and StringBuilder class
13 Graphical User interface, drawing 2D graphics using built-in classes and functions
14 Reading data from database into objects
15 File Handling
16 Semester Sample Project - Individual

34

You might also like