Object Oriented Programming
Object Oriented Programming
Program Outcomes:
1. Computational Knowledge:
Apply knowledge of computing fundamentals, computing specialisation, mathematics, statistics,
and domain knowledge appropriate for the computing specialisation to the abstraction and
conceptualisation of computing models from defined problems and requirements.
2. Problem Analysis:
Identify, formulate, review research literature, and solve and analyse complex computing
problems reaching substantiated conclusions using fundamental principles of mathematics,
computing sciences, and relevant domain disciplines.
6. Professional Ethics:
Understand, practise, and commit to professional ethics and cyber regulations, responsibilities,
and norms of professional computing practice.
7. Life-long Learning:
Recognize the need, and have the preparation and ability, to engage in independent and life-long
learning for continual development as a computing professional.
9. Communication Efficacy:
Communicate effectively with the computing community, and with society at large, about
complex computing activities by being able to comprehend and write effective reports, design
documentation, make effective presentations, and give and understand clear instructions.
Course Outcomes:
At the end of the course, the student would be able to:
i. Use Java data types, operators, control flow statements, and arrays to demonstrate the ability to
code simple programming problem solutions in Java, and compile and execute them.
(PO-1,2,3,4,5,6,7)
ii. Implement Java classes using principles of object-oriented programming to model real-world
entities and demonstrate how to build packages and use utility classes. (PO-1,2,3,4,5,6,7,10)
iii. Code robust Java programs by applying exception handling techniques, multithreading, and Java
I/O streams to solve file handling and console input/output problems.
(PO-1,2,3,4,5,6,7,10,11)
iv. Build interactive Graphical User Interfaces (GUI) using swing components, layout managers,
menus, and event handling mechanisms. (PO-1,2,3,4,5,6,7,12)
v. Apply Java database connectivity concepts to solve data management problems by performing
CRUD operations on a database. (PO-1,2,3,4,5,6,7,9,11,12)
Course Total Teaching Hours: The total teaching hours for this course are 45 theory sessions of 60 minutes
each, and 15 laboratory sessions of 120 minutes each. i.e. 75 hours (Lecture and Lab duration may be adjusted
as per requirements).
Course Contents:
Marks allotted
Module No. of
Module Content for the exam
No. sessions
(out of 60)
Introduction to Object-Oriented Programming and Java
GUI in Java
Teaching Method:
The following pedagogical tools will be used to teach this course
a) Practical Sessions and Discussions
b) Assignments/ Quizzes/ Class participation etc
c) Compulsory class presentation
d) Case Study
e) Projects/ assignments
Evaluation:
Sr. No. Components Weightage
Text Books:
Sr.
Author Name of the Book Publisher Edition
No.
McGraw
T1 Herbert Schildt Java The Complete Reference 11th
Hill
T2 DT Editorial Services Java 8 Programming Black Book Dreamtech
Reference Books:
Sr.
Author Name of the Book Publisher Edition
No.
Pearson,
R1 Cay Horstmann Core Java
Oracle Press
R2 Hari Mohan Pandey Java Programming Pearson
Allen B. Downey,
R3 Think Java O’Reilly
Chris Mayfield
R4 Kathy Sierra, Bert Head First Java O’Reilly
Bates
Journals
• ACM Transactions on Java and Related Technologies (TOJ): Dedicated journal for
research on Java language and its ecosystem, including libraries, frameworks, and tools.
• The Java Journal: Offers articles and tutorials on practical uses of Java in various
domains, including web development, enterprise applications, and scientific computing.
• Journal of Object-Oriented Programming (JOOP): Publishes articles and tutorials on
practical applications of OOP in various programming languages.
Magazines
• PC Magazine, Dataquest, Express Computer, The Java Magazine, Dr. Dobb’s Journal,
InfoQ
Online Platforms
• Coursera, Udemy, Udacity, edX, Codeacademy
Online Resources
• Java Tutorials by Oracle, GeeksforGeeks, LeetCode, HackerRank, Visualgo, MIT
OpenCourseware, GitHub
• Online communities: Participating in online forums and communities can provide
valuable insights and discussions on OOP and Java concepts. Popular communities
include: Stack Overflow, Reddit's r/java
• Baeldung: A widely read blog with in-depth tutorials and articles on Java programming,
covering various OOP concepts and best practices.
• JavaWorld: A resource website maintained by Oracle, providing Java news, tutorials, and
documentation.
• Podcasts: Several podcasts discuss software development topics, including some
dedicated to OOP and Java, like "Java Corner" and "The Java Coffee Break."
Online Courses:-
• https://onlinecourses.nptel.ac.in/noc24_cs43/preview
• https://onlinecourses.swayam2.ac.in/aic20_sp13/preview