Programming With Java Course Plan
Programming With Java Course Plan
SECTION I
Semester II Programme & Class 2 BCA
It is expected that students will use genuine, sincere, and fair means for the accomplishment of the tests, tasks, or projects from which
evaluations of progress shall be determined. Students found plagiarizing, copying or cheating in any way will receive automatic zeros.
Course Description
The objective of this course is to teach the object oriented principles and advanced features in Java technologies. The
practical sessions planned along with this course make the students industry ready in java platform. Students will be
Course Objectives developing and testing java application as a practical course work. The course introduces the concept of UI design in java
using SWING and JAVAFX.
CO1: Understanding and applying the principles of object-oriented programming in the construction of robust,
maintainable programs.
CO2: Analyze the various societal and environmental problems critically to develop solutions using the features of
Course Outcomes programming language.
CO3: Develop sustainable and innovative solutions for real-time problems.
SECTION II
Pedagogy
Hours /activities and
Unit Topic Details Week Per or class trips/ Reference Details
Week dates for
assessment
Arraysand Classes
Declaring Arrays - Accessing Array Elements – For ● Problem
Each loop – Array Copying - Command-Line Week 1 4 [1]Schildt Herbert, Java
Unit I-Array solving
Parameters – Array Sorting – Multi Dimensional (03/12/24 - :The Complete
and classes 07/12/24) ● Lecture Reference, Tata
Arrays – Ragged Arrays
● Discussion McGraw- Hill, 11th
Trial Program related to OOPs 2 ● AI Tools Edition,2019
[2]The complete reference
Classes and Objects JSP 2.0, Tata McGraw-
General Form of a Class- Declaring Objects – Hill, 2nd Edition, Phil
Introducing Methods – Parameterized 4 Hanna
Methods-Method Overloading – Using Objects as [3]Horstmann Cay, Core
Parameters Java volume
Week 2 ● Problem 1-Fundamentals, 11th
solving Edition, 2019
Unit I-Array (09/12/24 -
and classes Lab Exercises: 14/12/24) ● Lecture
1. Identify a domain of your choice, list out ten entities ● Discussion
in the domain. For each entity, identify minimum 10 2 ● AI Tools
attributes and assign the data type for each attribute
with proper justification.
Classes and Objects : Constructors – Parameterized
Constructors - Constructor Overloading – this
keyword – Garbage collection - Introducing Access ● Problem
Week 3 4
Control – Understanding Static - Relationship Between solving
Unit I-Array Classes – Using Predefined Classes- Mutator and ● Lecture
and classes Accessor Methods (16/12/24 -
20/12/24) ● Discussion
Lab Exercises:
2. Implement the concept of class, data members, 2 AI Tools
member functions and access specifiers.
Inheritance
Super Classes and Subclasses - Defining Subclasses – [1] Schildt Herbert, Java
Overriding Methods- Dynamic Method Dispatch - :The Complete Reference,
Subclass constructors – Inheritance hierarchies- 4 Tata McGraw- Hill, 11th
Polymorphism- Understanding method calls- Final Edition,2019
Unit Classes and Methods – Casting – Abstract Classes – Week 4 ● Problem [2] The complete reference
II-Inheritance Protected access – Object class solving JSP 2.0, Tata McGraw- Hill,
(2/01/25 -
● Lecture 2nd Edition, Phil Hanna
4/01/25)
● Discussion [3] Horstmann Cay, Core
Lab Exercises: ● AI Tools Java volume
1-Fundamentals, 11th
3. Implement the concept of array of objects with 2 Edition, 2019
constructor and function overloading
Revision
CIA-1 output based questions (25 Marks)
4
Week 5
(06/01/25
–11/01/25) ● Problem
Lab Exercises: solving
Practice Program on Implement the concept function 2 ● Lecture
overloading ● Discussion
● AI Tools
Defining a package - Finding packages and
CLASSPATH – Packages and Member access
–importing packages – Defining an interface –
Unit II- Implementing Interfaces – Accessing Implementation 4
Inheritance Week 6 ● Problem
through interface references – Nested interfaces –
Variables in interface – Extending interface –default (13/01/25 solving
methods, String and String Buffer class. –18/01/25) ● Lecture
● Discussion
Lab Exercises:
4. Implement the concept of inheritance, super, abstract 2
and final keywords.
4 ● Problem
API – Servlet Interfaces – Generic Servlet Class- Week 17
HttpServletRequest Interface – HttpServeltResponse solving
(31/03/25
–05/04/25) ● Discussion
● Lecture
Buffer Lab 2 ● AI Tools
JSP
The JSP development model – component of jsp page Week 18 4 ● Problem
– Page directive – Action – scriptlet – JSP expression solving
(07/04/25
–12/04/25) ● Discussion
Lab Exercises: ● Lecture
2
13. Implement the concept of JSP ● AI Tools
Week 19
Problem Sessions and pending viva
(14/04/25 6
ESE Test – III –19/04/25)
Week 20
Revision
(21/04/25 6
–26/04/25)
SECTION III
Mapping: PO and CO
PO2 2 2 2
PO3 2 2 1
PO4 - 1 1
PO5 2 1 1
PO6 1 - -
PO7 - 2 1
PO8 - - -
Mapping of needs with the syllabus:
Course Local, Regional, National, Cross-cutting issues relating Employability/Entrepreneursh Sustainable Development
Outcome Global and Development Needs to Professional Ethics, ip/ Skill Development Goals
s (LRNG) Gender, Human Values,
Environment and
Sustainability
CO1 Local, Regional, National, Professional Ethics Employability and Skill SDG 4, 17
Global Development
CO2 Local, Regional, National, Professional Ethics Employability and Skill SDG 4, 17
Global Development
CO3 Local, Regional, National, Professional Ethics Employability and Skill SDG 4, 17
Global Development
Topic/Mo Local, Regional, National, Cross-cutting issues relating Employability/Entrepreneursh Sustainable Development
dule Global and Development Needs to Professional Ethics, ip/ Skill Development Goals
Details (LRNG) Gender, Human Values,
Environment and
Sustainability
I Arrays Local, Regional, National, Professional Ethics: Arrays Employability and Skill SDG 4, 17: Arrays and
Global Need: Arrays and and Classes Development: Arrays and Classes
and Classes Classes
Classes
Declaring Arrays - Accessing Declaring Arrays - Declaring Arrays - Accessing Declaring Arrays -
Array Elements – For Each Accessing Array Elements – Array Elements – For Each Accessing Array Elements
loop – Array Copying - For Each loop – Array loop – Array Copying - – For Each loop – Array
Command-Line Parameters – Copying - Command-Line Command-Line Parameters – Copying - Command-Line
Array Sorting – Multi Parameters – Array Sorting Array Sorting – Multi Parameters – Array
Dimensional Arrays – Ragged – Multi Dimensional Arrays Dimensional Arrays – Sorting – Multi
Arrays – Ragged Arrays Ragged Arrays Dimensional Arrays –
Ragged Arrays
Classes and Objects Classes and Objects Classes and Objects
Classes and Objects
General Form of a Class- General Form of a Class- General Form of a Class-
Declaring Objects – Declaring Objects – Declaring Objects – General Form of a Class-
Introducing Methods – Introducing Methods – Introducing Methods – Declaring Objects –
Parameterized Parameterized Parameterized Introducing Methods –
Methods-Method Overloading Methods-Method Methods-Method Parameterized
– Using Objects as Parameters Overloading – Using Overloading – Using Objects Methods-Method
- Constructors – Parameterized Objects as Parameters - as Parameters - Constructors Overloading – Using
Constructors - Constructor Constructors – – Parameterized Constructors Objects as Parameters -
Overloading – this keyword – Parameterized Constructors - Constructor Overloading – Constructors –
Garbage collection - - Constructor Overloading this keyword – Garbage Parameterized
Introducing Access Control – – this keyword – Garbage collection - Introducing Constructors - Constructor
Understanding Static - collection - Introducing Access Control – Overloading – this
Relationship Between Classes Access Control – Understanding Static - keyword – Garbage
– Using Predefined Classes- Understanding Static - Relationship Between Classes collection - Introducing
Mutator and Accessor Methods Relationship Between – Using Predefined Classes- Access Control –
Classes – Using Predefined Mutator and Accessor Understanding Static -
Classes- Mutator and Methods Relationship Between
Accessor Methods Classes – Using
Predefined Classes-
Mutator and Accessor
Methods
II Local, Regional, National, Professional Ethics: Employability and Skill SDG 4, 17: Inheritance
Inheritan Global Need: Inheritance Inheritance Development: : Inheritance
ce Super Classes and
Super Classes and Subclasses - Super Classes and Super Classes and Subclasses Subclasses - Defining
Defining Subclasses – Subclasses - Defining - Defining Subclasses – Subclasses – Overriding
Overriding Methods- Dynamic Subclasses – Overriding Overriding Methods- Methods- Dynamic
Method Dispatch - Subclass Methods- Dynamic Method Dynamic Method Dispatch - Method Dispatch -
constructors – Inheritance Dispatch - Subclass Subclass constructors – Subclass constructors –
hierarchies- Polymorphism- constructors – Inheritance Inheritance hierarchies- Inheritance hierarchies-
Understanding method calls- hierarchies- Polymorphism- Polymorphism- Polymorphism-
Final Classes and Methods – Understanding method Understanding method calls- Understanding method
Casting – Abstract Classes – calls- Final Classes and Final Classes and Methods – calls- Final Classes and
Protected access – Object Methods – Casting – Casting – Abstract Classes – Methods – Casting –
class. Abstract Classes – Protected Protected access – Object Abstract Classes –
access – Object class. class. Protected access – Object
Packages and Interfaces
class.
Packages and Interfaces Packages and Interfaces
Defining a package - Finding
Packages and Interfaces
packages and CLASSPATH – Defining a package - Defining a package - Finding
Packages and Member access Finding packages and packages and CLASSPATH – Defining a package -
–importing packages – CLASSPATH – Packages Packages and Member access Finding packages and
Defining an interface – and Member access –importing packages – CLASSPATH – Packages
Implementing Interfaces – –importing packages – Defining an interface – and Member access
Accessing Implementation Defining an interface – Implementing Interfaces – –importing packages –
through interface references – Implementing Interfaces – Accessing Implementation Defining an interface –
Nested interfaces – Variables in Accessing Implementation through interface references – Implementing Interfaces –
interface – Extending interface through interface references Nested interfaces – Variables Accessing Implementation
–default methods, String and – Nested interfaces – in interface – Extending through interface
String Buffer class. Variables in interface – interface –default methods, references – Nested
Extending interface –default String and String Buffer class. interfaces – Variables in
methods, String and String interface – Extending
Buffer class. interface –default methods,
String and String Buffer
class.
III Local, Regional, National, Professional Ethics: Employability and Skill SDG 4, 17: Exception
Exceptio Global Need: Exception Exception Handling Development: : Exception Handling
n Handling Handling
Handling Fundamentals – Exception Fundamentals – Exception
, Multi Fundamentals – Exception types –uncaught exception – Fundamentals – Exception types –uncaught exception
Threadin types –uncaught exception – Using try and catch – types –uncaught exception – – Using try and catch –
g and Using try and catch – Multiple Multiple catch clauses- Using try and catch – Multiple catch clauses-
Collectio catch clauses- Nested try Nested try statements - Multiple catch clauses- Nested try statements -
ns statements - Throw – Throws - Throw – Throws - Finally - Nested try statements - Throw – Throws - Finally
Finally - Java’s Built in Java’s Built in exception – Throw – Throws - Finally - - Java’s Built in exception
exception – Creating your own Creating your own Java’s Built in exception – – Creating your own
exception subclasses exception subclasses Creating your own exception exception subclasses
subclasses
Multi Threading Multi Threading Multi Threading
Multi Threading
The java thread model – The The java thread model – The java thread model –
Main thread - Creating a The Main thread - Creating The java thread model – The The Main thread -
thread – Creating multiple a thread – Creating multiple Main thread - Creating a Creating a thread –
threads – Thread priorities – threads – Thread priorities – thread – Creating multiple Creating multiple threads –
Synchronization – Inter - Synchronization – Inter - threads – Thread priorities – Thread priorities –
Thread communication. Thread communication. Synchronization – Inter - Synchronization – Inter -
Thread communication. Thread communication.
Collections Collections
Collections Collections
Overview – Collection Overview – Collection
Interfaces (Collection – List – Interfaces (Collection – List Overview – Collection Overview – Collection
Set – SortedSet – – Set – SortedSet – Interfaces (Collection – List – Interfaces (Collection –
NavigableSet - Queue– NavigableSet - Queue– Set – SortedSet – List – Set – SortedSet –
Deque)- Collection Deque)- Collection NavigableSet - Queue– NavigableSet - Queue–
Classes(ArrayLsit – LinkedList Classes(ArrayLsit – Deque)- Collection Deque)- Collection
– HashSet – LinkedList – HashSet – Classes(ArrayLsit – Classes(ArrayLsit –
LinkedHashSet-TreeSet- LinkedHashSet-TreeSet- LinkedList – HashSet – LinkedList – HashSet –
PriorityQueue- PriorityQueue- LinkedHashSet-TreeSet- LinkedHashSet-TreeSet-
ArrayQueue-EnumSet) ArrayQueue-EnumSet) PriorityQueue- PriorityQueue-
ArrayQueue-EnumSet) ArrayQueue-EnumSet)
IV Swing Local, Regional, National, Professional Ethics: Swing Employability and Skill SDG 4, 17: Swing Package
Package Global Need: Swing Package Package and JDBC Development: Swing Package and JDBC
and and JDBC and JDBC
JDBC Origin of swing – MVC Origin of swing – MVC
Origin of swing – MVC connection- Components – Origin of swing – MVC connection- Components –
connection- Components – Containers – Simple Swing connection- Components – Containers – Simple
Containers – Simple Swing Application- Event Containers – Simple Swing Swing Application- Event
Application- Event handling- handling- JButton – JList – Application- Event handling- handling- JButton – JList –
JButton – JList – JTable – JTable – JcheckBox – JButton – JList – JTable – JTable – JcheckBox –
JcheckBox – JradioButton – JradioButton – JTextField – JcheckBox – JradioButton – JradioButton – JTextField
JTextField – JComboBox- JComboBox- JScrollPane JTextField – JComboBox- – JComboBox-
JScrollPane –JtoggleButton – –JtoggleButton – JLabel – JScrollPane –JtoggleButton – JScrollPane
JLabel – JTabbedPane – JTree JTabbedPane – JTree – JLabel – JTabbedPane – JTree –JtoggleButton – JLabel –
– JMenuBar, JMenu – JMenuBar, JMenu – – JMenuBar, JMenu – JTabbedPane – JTree –
JmenuItem JmenuItem JmenuItem JMenuBar, JMenu –
JmenuItem
Database Database Database
Database
Database Programming – Database Programming – Database Programming –
Connecting to and querying a Connecting to and querying Connecting to and querying a Database Programming –
database – Automatic driver a database – Automatic database – Automatic driver Connecting to and
recovery - Connecting to the driver recovery - recovery - Connecting to the querying a database –
database – Creating a Connecting to the database database – Creating a Automatic driver recovery
Statement for executing query - – Creating a Statement for Statement for executing query - Connecting to the
Executing a query - Processing executing query - Executing - Executing a query - database – Creating a
a Query’s ResultSet – a query - Processing a Processing a Query’s Statement for executing
PreparedStatements. Query’s ResultSet – ResultSet – query - Executing a query
PreparedStatements. PreparedStatements. - Processing a Query’s
ResultSet –
PreparedStatements.
SECTION IV
No. of Questions 25
Evaluation Rubrics:
Code Quality and Code is clean, modular, and adheres to best practices.
4 marks
Documentation Includes sufficient comments and documentation.
Presentation and Provides a clear explanation of the solution and reasoning behind
4 marks
Explanation design choices.
Documentation Format Handwritten submission of program and Implemented program submission on Google class room
Program will be given in Google classroom on the same day of test. Questions of the test will be case based. All the students
Description will get different set of questions. First 45 mins will be given for writing the code in the given answer sheet. After that
implement the program , test the output and get it evaluated by the evaluator.
Evaluation Rubric/s:
Evaluation Maximum
Need to improve Satisfactory Proficient
Rubrics Marks
R1: Correctness Partially accurate and logical errors free Full Accuracy and Absence of logical errors [8
10 Full or some error [0 - 3]
of Code code [5 - 6] - 10]
R2: Output of the No correctness and Efficiency in Partial correctness and Efficiency in output correctness and Efficiency with proper testing
5
code output [0] [1 - 3] and validation of output [4 -5]
R3: Code Well-defined functions and modularization
5 No clear Logical Structure [0] Partially clear Logical Structure [1 - 3]
Complexity with clear Logical Structure [4 - 5]
R4: Execution of Achieves or not achieves the Achieves the specified objectives and Achieves the specified objectives and Handles
10
the code specified objectives [0 - 3] Handles edge cases partially [ 4 - 7] edge cases appropriately [8 - 10]
Documentation Format Handwritten submission of program and Implemented program submission on Google class room
Program will be given in Google classroom on the same day of test. Questions of the test will be case based. All the students
Description will get different set of questions. First 45 mins will be given for writing the code in the given answer sheet. After that
implement the program , test the output and get it evaluated by the evaluator.
Evaluation Rubric/s:
Evaluation Maximum
Need to improve Satisfactory Proficient
Rubrics Marks
R1: Correctness of Partially accurate and logical errors free Full Accuracy and Absence of logical errors [4
5 Full or some error [0 -1]
Code code [2 - 3] - 5]
R2: Output of the No correctness and Efficiency in Partial correctness and Efficiency in output correctness and Efficiency with proper testing
5
code output [0] [2 -3] and validation of output [4 - 5]
R3: Code Well-defined functions and modularization
5 No clear Logical Structure [0] Partially clear Logical Structure [2 - 3]
Complexity with clear Logical Structure [4 - 5]
R4: Execution of Achieves or not achieves the Achieves the specified objectives and Achieves the specified objectives and Handles
5
the code specified objectives [0 -1] Handles edge cases partially [ 2 - 3] edge cases appropriately [ 4 - 5]
Not explanation and no example Partial explanation of the work without Proper explanation of the work with proper
R5:Viva Voce 5 real-life examples [1 - 2]
[0] real examples [4 - 5]
Evaluation Rubric/s:
Maximum
Evaluation Rubrics Need to improve Satisfactory Proficient
Marks
Only basic concepts are
R1:Demonstarted Able to elaborate and explain to some Demonstrates the full knowledge of topic
10 demonstrated and
Knowledge degree[5-7] with explanations and elaborations [8-10]
interpreted[0-4]
Minimal Information and less Good Documentation and need more Excellent documentation with all
R2:Documentation 10
connectivity in topics [0-4] reference for justification [5-7] satisfactory requirements [8 -10]
Partially Analyze and Categorize the JAVA Clearly Analyze and Categorize the JAVA
No Proper Analysis on JAVA
R3:Analyze and Apply 10 framework for enterprise and web based framework for enterprise and web based
Framework [0 - 4]
applications [5-7] applications [8 -10]
Identified the relevant real-time
R4:Identiofication of Not clear identified the Identified the real-time applications and not
10 exactly relevant to the java frameworks [5-7] applications for each java framework
Real-Time Applications real-time applications [0 - 4]
with web reference [8 -10]
Maximum
Evaluation Rubrics Need to improve Satisfactory Proficient
Marks
R1: Timely
Not on time [0] Not on time [0] Not on time [0]
submission of the 2
On time [2] On time [2] On time [2]
program
Full error and No Partially accurate and logical errors free Full Accuracy and Absence of logical errors and
R2: Correctness of
2 correctness and Efficiency code and Partial correctness and correctness and Efficiency with proper testing and
Code and output
in output [0] Efficiency in output [1] validation of output [2]
Nothing is there in the Well-defined functions and modularization with
R3: Record file 2 Partially clear Logical Structure [1]
file[0] clear Logical Structure [2]
R4: Execution of the Not achieved the specified Achieves the specified objectives and Achieves the specified objectives and Handles edge
2
code objectives [0] Handles edge cases partially [1] cases appropriately [2]
Not explanation and no Partial explanation of the work without Proper explanation of the work with proper real
R5:Viva Voce 2 real-life examples [1]
example [0] examples [2]
Project along with groups will be given in Google classroom. Projects will be case based. All the groups will be given
Description
different projects.
Evaluation Rubric/s:
Maximum
Evaluation Rubrics Need to improve Satisfactory Proficient
Marks
R1: Correctness of Partially accurate and logical errors free Full Accuracy and Absence of logical errors
10 Full or some error [0-4]
Code code [5-7] [8-10]
R2: Output of the No correctness and Efficiency in Partial correctness and Efficiency in output correctness and Efficiency with proper testing
10
code output [0-4] [5-7] and validation of output [8-10]
R3: Code Well-defined functions and modularization
10 No clear Logical Structure [0-4] Partially clear Logical Structure [5-7]
Complexity with clear Logical Structure [8-10]
R4: Execution of the Achieves or not achieves the Achieves the specified objectives and Achieves the specified objectives and Handles
10
code specified objectives [0-4] Handles edge cases partially [5-7] edge cases appropriately [8-10]