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

24CSE102_Object Oriented Programming_ 1st Sem_CPS

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

24CSE102_Object Oriented Programming_ 1st Sem_CPS

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

OBJECT-ORIENTED PROGRAMMING

Course Code: 24CSE102 L-T-P-E: 2-0-2-2


Total Hours: 60 Credits: 3

CA: UE: 50:50 Maximum marks: 100

Course Learning Objectives (CLO)

The objective of this course is to make students to

1. Introduce the principles of object-oriented programming using a higher-level


programminglanguage, such as Java
2. Analyse a problem statement to develop a mental model of objects necessary to create
asoftware architecture
3. Utilize object-oriented programming to frame software architectures, with care towards
theseparation of concerns and abstraction
4. Gain skills in designing, and programming software for the reuse of code
5. Establish development methods in an object-oriented program

MODULE 1: [10 hours]


Intro and Overview Object Oriented Programming: Principle of Software Engineering,
Reusing and Extending Code, SOLID and DRY principles, Review of Java Language
Fundamentals,Introduction to OOPs, Classes and Objects, Object Creation, Instance Members
(variables and methods), Static Keyword, and Class Members (variables and methods).
MODULE 2: [10 hours]
Encapsulation in Java: Information Hiding & Encapsulation, Access Modifiers,
Constructors, Constructor Chaining, Use of this Keyword, Getters and Setters, POJO Classes,
Packages, Import, Static Import, and Initializer Blocks.
MODULE 3: [10 hours]
Inheritance and Abstraction in Java: Parent class, Child class, Types of Inheritance, IS-A
Relationship, HAS-A Relationship, Use of super(), Abstract Methods, Abstract Classes,
Interfaces, Default, Static and Private Methods in Interface, Anonymous Inner Classes,
Lambda Expressions, and Generics.

1
MODULE 4: [07 hours]
Polymorphism in Java: Introduction to Polymorphism, Static Polymorphism, Dynamic
Polymorphism, Polymorphic References, Coupling, and Cohesion.
MODULE 5: [08 hours]
Exception Handling in Java: Difference between Syntax Error, Errors, and Exceptions,
Exception Hierarchy, Try, Catch, Catching Specific Exception, Final, Throw, Throws,
Checked vs. Unchecked Exceptions, Try-with-Resources, and User-defined Exceptions.
TEXTBOOKS:
1. Head First Java: Your Brain on Java - A Learner's Guide, Third Edition, Kathy Sierra, Bert
Bates, et al. (June 1, 2022), ISBN-10: 9355420900, ISBN-13: 978-9355420909
2. Object-Oriented Thought Process, The (Developer's Library) by Matt Weisfeld (Author)
ISBN-13: 978-0135181966
REFERENCES:
1. Object-Oriented Thought Process, The (Developer's Library) by Matt Weisfeld (Author)
ISBN-13: 978-0135181966
2. Java Concepts by Jenkov https://jenkov.com/tutorials/java/index.html
3. Java Concepts by Programiz https://www.programiz.com/java-programming
4. Java Concepts and Hands-on GitHub Repo https://github.com/akash-coded/core-java

SKILL-BASED ACTIVITIES (SBE):


Note: - These Projects/activities are only indicative; the Faculty member can innovate

• Case Studies
o Case Study 1
▪ Create a class, which is like a blueprint for creating an object
▪ Use classes to create new objects
▪ Model systems with class inheritance
▪ https://www.digitalocean.com/community/tutorials/oops-
concepts-java- example
o Case Study 2
▪ Inheritance, Abstraction, and Polymorphism with RBI and
Indian BankAccount
▪ https://github.com/akash-coded/core-java/discussions/18
• Mini Projects:
o Mini Project 1
▪ Airline Reservation System in Java:
• https://www.codewithc.com/airlines-reservation-
system-java- project/
o Mini Project 2
▪ Course Management System in Java:
• https://www.codewithc.com/course-management-

2
system-java-project/
• Assignments
o Assignment 1:
▪ Describe the evolution of OOPS
• https://www.infoq.com/presentations/oop-functional-evolution/
o Assignment 2:
▪ Enlist the Java 8 features with examples
• https://www.digitalocean.com/community/tutorials/java-8-
features- with-examples
Course Outcomes:
At the end of the course, students will be able to

Course Description Bloom’s


Outcomes Taxonomy Level

CO1 Discuss the concepts of object-oriented programming Understanding (2)


CO2 Demonstrate the necessity of object modeling in creating Applying (3)
software architecture
CO3 Use inheritance to solve real world examples. Applying (3)
CO4 Illustrate abstract concepts into Classes in software Applying (3)
CO5 Demonstrate the concept of polymorphism Applying (3)
CO6 Implement exception handling in JAVA Applying (3)
CO/PO: Mapping
(3/2/1 indicates strength of correlation) 3-High, 2-Medium, 1-Low
Course Program Outcome (POs)
Outcome PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
(COs)
CO1 2 1
CO2 3 2 2
CO3 3 2 2
CO4 3 2 2
CO5 3 2 2
CO6 3 2 2

You might also like