Object Oriented Programming PBCST 304 Course Details and Syllabus
OBJECT ORIENTED PROGRAMMING
(Common to CS/CA/CD/AM/CB/CN/CU/CG)
Course Code |
PBCST304 |
CIEMarks |
60 |
Teaching Hours/Week (L:T:P:R) |
3:0:0:1 |
ESEMarks |
40 |
Credits |
4 |
ExamHours |
2Hrs.30Min. |
Prerequisites(ifany) |
None |
CourseType |
Theory |
Course Objectives:
SYLLABUS
Module
No. |
Syllabus Description |
Contact
Hours |
1 |
Introduction to Java:Structure of a simple java program; Java programming Environment and Runtime Environment (Command Line & IDE); Java compiler; Java Virtual Machine; Primitive Data types and Wrapper Types; Casting and Autoboxing; Arrays; Strings; Vector class; Operators - Arithmetic, Bitwise, Relational, Boolean Logical, Assignment, Conditional (Ternary); Operator Precedence; Control Statements - Selection Statements, Iteration Statements and Jump Statements; Functions; Command Line Arguments; Variable Length Arguments; Classes; Abstract Classes; Interfaces. [Use proper naming conventions] OOPConcepts:-Data abstraction,encapsulation,inheritance,polymorphism, Procedural and object oriented programming paradigm;Micro services. |
10 |
|
Object Oriented Programming in Java:- Declaring Objects; Object Reference; Introduction to Methods; Constructors; Access Modifiers; this keyword.
|
|
2 |
Polymorphism:- Method Overloading,Using Objects as Parameters,Returning Objects, Recursion. Static Members,Final Variables,Inner Classes. Inheritance-Super Class,Sub Class,Types of Inheritance,The super keyword,protected Members,Calling Order of Constructors. Method Overriding,Dynamic Method Dispatch,Using final with Inheritance.
|
8 |
3 |
Packages and Interfaces– Packages-Defining a Package, CLASSPATH,Access Protection,Importing Packages. Interfaces -Interfaces v/s Abstract classes, defining an interface, implementing interfaces, accessing implementations through interface references, extending interface(s). Exception Handling -Checked Exceptions, Unchecked Exceptions,try Block and catch Clause, Multiple catch Clauses, Nested try Statements, throw, throws and finally, Java Built-in Exceptions, Custom Exceptions. Introduction to design patterns inJava:Singleton and Adaptor. |
9 |
|
SOLID Principles in Java (https://www.javatpoint.com/solid-principles-java) Swings fundamentals –Overview of AWT, Swing v/s AWT, Swing Key Features,Model View Controller(MVC),Swing Controls,Components and Containers, Swing Packages, Event Handling in Swings, Swing Layout Managers, Exploring Swings–JFrame, JLabel, The Swing Buttons, JTextField. Event handling –Event Handling Mechanisms, Delegation Event Model, Event Classes, Sources of Events, Event Listener Interfaces, Using the Delegation Event Model. | 10 |
Developing Database Applications using JDBC–JDB Cover view,Types,Steps, Common JDBC Components, Connection Establishment, SQL Fundamentals [For projects only] - Creating and Executing basic SQL Queries,Working with Result Set,Performing CRUD Operations with JDBC. |
|
Student should Identify a topic to be implemented as project having the following nature
i. It must accept a considerable amount of information from the user for processing.
ii. It must have a considerable amount of data to be stored permanently within the computer -
as plain files / using databases..
iii. It must process the user provided data and the stored data to generate some output to
be displayed to the user.
Examples : -
I. Class Design
● Book: Attributes like title, author, ISBN, genre, and status (available/borrowed).
● User: Attributes like user ID, name, contact information, and a list of borrowed
books.
● Library: Attributes like a list of books and a list of users.
● Librarian: Inherits from User, with additional functionalities like adding/removing
books and managing users.
● BorrowTransaction: Attributes like transaction ID, book, user, borrow date, and
return date
II. Functionalities
a. Book Management:
● Add, remove, and update book details.
● Search books by title, author, ISBN, and genre.
b. User Management:
● Register new users.
● Search users by user ID and name.
c. Borrowing and Returning:
● Borrow a book: Check if the book is available and if the user can borrow
more books.
● Return a book: Update the book’s status and remove it from the user’s
borrowed list.
III. Deliverables
1. Design Document: Describe the classes, their attributes, methods and relationships.
2. Source Code: Well-documented Java code implementing the described functionalities.
3. User Manual: Instructions on how to set up, run and use the system.
4. Test Cases: A suite of test cases demonstrating the functionality of the system.
Requirements
a. Class Design
● Payment: An abstract base class with common attributes and an abstract method for
processing payments.
● CreditCardPayment: Inherits from Payment, with specific implementation for processing
credit card payments.
● PayPal Payment: Inherits from Payment, with specific implementation for processing
PayPal payments.
● Bank Transfer Payment: Inherits from Payment, with specific implementation for
processing bank transfer payments.
● Payment Processor: A class to manage and process different types of payments.
b. Functionalities
● Add Payment Method: Add new payment methods (CreditCardPayment, PayPalPayment,
BankTransferPayment) to the system.
● Process Payment: Demonstrate dynamic polymorphism by processing payments using
different methods.
c. Deliverables
● Design Document: Describe the classes, their attributes, methods and relationships.
● Source Code: Well-documented Java code implementing the described functionalities.
● User Manual: Instructions on how to set up, run and use the system.
● Test Cases: A suite of test cases demonstrating the functionality of the system.
Course Assessment
Method(CIE: 60 marks, ESE: 40 marks)
Continuous Internal Evaluation Marks(CIE):
Attendance |
Project |
Internal Ex-1 |
Internal Ex-2 |
Total |
5 |
30 |
12.5 |
12.5 |
60 |
End Semester Examination Marks(ESE)
In PartA,all questions need to be answered and in
PartB,each student can choose anyone full question out of two questions
PartA |
PartB |
Total |
|
(4x6=24marks) |
40 |
Course Outcomes(COs)
At the end of the course students should be able to:
CourseOutcome |
Bloom’s Knowledge Level(KL) |
|
CO1 |
Explaintheprocessofwriting,compiling,andexecutingbasicJavaprograms, includingtheirstructureandcomponents,todemonstrateproficiency. |
K2 |
CO2 |
Utilizeobject-orientedprogrammingprinciplesinthedesignand implementationofJavaapplications. |
K3 |
CO3 |
DevelopandmanageJavapackagesandinterfaces,enhancingcode modularityandreusability. |
K3 |
CO4 |
ImplementerrorhandlingusingJava'sexceptionmechanismsandleverage interfacesformodularapplications. |
K3 |
CO5 |
Developevent-drivenJavaGUIapplicationswithdatabaseconnectivity using SwingandJDBC. |
K3 |
Note:K1-Remember,K2-Understand,K3-Apply,K4-Analyse,K5-Evaluate,K6-Create
CO-POMappingTable:
|
PO1 |
PO2 |
PO3 |
PO4 |
PO5 |
PO6 |
PO7 |
PO8 |
PO9 |
PO10 |
PO11 |
PO12 |
CO1 |
3 |
3 |
|
|
|
|
|
|
|
|
|
3 |
CO2 |
3 |
3 |
3 |
|
|
|
|
|
|
|
|
3 |
CO3 |
3 |
3 |
3 |
|
3 |
|
|
|
|
|
|
3 |
CO4 |
3 |
3 |
3 |
|
3 |
|
|
|
|
|
|
3 |
CO5 |
3 |
3 |
3 |
|
3 |
|
|
|
|
|
|
3 |
Note:1:Slight(Low),2:Moderate(Medium),3:Substantial(High),-:NoCorrelation
TextBooks |
||||
Sl.No |
TitleoftheBook |
NameoftheAuthor/s |
Nameofthe Publisher |
Edition andYear |
1 |
Java:TheCompleteReference |
HerbertSchildt |
TataMcGrawHill |
13/e,2024 |
2 |
IntroductiontoJavaProgramming,
Comprehensive Version |
YDanielLiang |
Pearson |
10/e,2014 |
3 |
HeadFirstDesignPatterns |
EricFreeman,Elisabeth
Robson, Bert Bates, KathySierra |
O'ReillyMedia |
1/e,2004 |
Reference Books |
||||
Sl.No |
TitleoftheBook |
NameoftheAuthor/s |
Nameofthe
Publisher |
Edition andYear |
1 |
HeadFirstJava:ABrain FriendlyGuide |
KathySierra&Bert Bates |
O’Reilly |
3/e,2022 |
2 |
JAVA™forProgrammers |
PaulDeitel |
PHI |
11/e,2018 |
3 |
CleanCode:AHandbookof AgileSoftwareCraftsmanship |
RobertC.Martin |
PrenticeHall |
1/e,2008 |
4 |
ProgrammingwithJava |
EBalagurusamy |
McGrawHill
Education |
6/e,2019 |
5 |
JavaForDummies |
BarryA.Burd |
Wiley |
8/e.2022 |
6 |
EffectiveJava |
JoshuaBloch |
Pearson |
3/e,2018 |
VideoLinks(NPTEL,SWAYAM…) |
|
Modul eNo. |
LinkID |
1 |
https://nptel.ac.in/courses/106105191(Lectureno:9,10,1,2,3,4) |
2 |
https://nptel.ac.in/courses/106105191(Lectureno:1,7,8,
11,12,13,14,15,16) |
3 |
https://nptel.ac.in/courses/106105191(Lectureno:17,18,19,20,21,22,23,24,25,26) |
4 |
https://nptel.ac.in/courses/106105191(Lectureno:43,44,45,46,47,50,51,52,53,54,55) |
PBL Course Elements
L:Lecture (3 Hrs.) |
R:Project(1Hr.),2Faculty Members |
||
Tutorial |
Practical |
Presentation |
|
Lecture delivery |
Project identification |
Simulation/ Laboratory Work/ Workshops |
Presentation (Progress and Final Presentations) |
Group discussion |
Project Analysis |
Data Collection |
Evaluation |
Question answer Sessions/ Brainstorming
Sessions |
Analytical thinking andself-learning |
Testing |
Project Milestone Reviews, Feedback, Project reformation (If required) |
GuestSpeakers (Industry Experts) |
Case Study/ Field Survey Report |
Prototyping |
PosterPresentation/ VideoPresentation:Students present their results in a 2 to5 minutes video |
Sl.No |
Evaluation for |
Allotted Marks |
1 |
Project Planning and Proposal |
5 |
2 |
Contribution in Progress Presentations and Question Answer Sessions |
4 |
3 |
Involvement in the project work and Team Work |
3 |
4 |
Execution and Implementation |
10 |
5 |
Final Presentations |
5 |
6 |
Project Quality,Innovation and Creativity |
3 |
Total |
30 |
1. Project Planning and Proposal (5 Marks)
- Clarity and feasibility of the project plan
- Research and background understanding
- Defined objectives and methodology
2. Contribution in Progress Presentation and Question Answer Sessions (4 Marks)
- Individual contribution to the presentation
- Effectiveness in answering questions and handling feedback
3. Involvement in the Project Work and Team Work (3 Marks)
- Active participation and individual contribution
- Teamwork and collaboration
4. Execution and Implementation (10 Marks)
- Adherence to the project timeline and milestones
- Application of theoretical knowledge and problem-solving
- Final Result
5. Final Presentation (5 Marks)
- Quality and clarity of the overall presentation
- Individual contribution to the presentation
- Effectiveness in answering questions
6. Project Quality, Innovation, and Creativity (3 Marks)
- Overall quality and technical excellence of the project
- Innovation and originality in the project
- Creativity in solutions and approaches
Comments
Post a Comment