IIS2121-CourseHandout-2024

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

MANIPAL UNIVERSITY JAIPUR

School of Computing & Intelligent Systems

Department of IoT & Intelligent Systems


Course Hand-Out
Object Oriented Programming using Java| IIS2121 | 4 Credits | 3 1 0 4
Session: Jul 24-Dec 24 | Faculty: Dr. Sandeep Singh & Dr. Sourabh Singh Verma
Class: BTech CSE (IoT&IS) III SEM | Section: A & B

Introduction: This course is offered by the Department of IoT and Intelligent Systems. As object-oriented
techniques have revolutionized the software development process and are used tremendously in the IT
industry to develop software products of various kinds. The course is designed to give students an in-depth
understanding of the basic concepts of object-oriented programming such as encapsulation, inheritance,
and polymorphism using Java programming language as an aid in tool. The course curriculum and structure
has been divided into various modules which cover the programming aspects related to an object-oriented
domain such as polymorphisms, inheritance and exception handling etc. The course will be taught by slides,
live demo and practice sessions in the class. After the conceptual part, the classroom demonstration of
application building will be there which will include multithreading, AWT programming, JDBC connectivity,
collection framework and server side programming.

A. Course Outcomes: At the end of the course, students will be able to:
[IIS2121.1] Identify the OOP concepts, working of JVM, JDK, JRE, Unicode System, variables and data
types in Java.
[IIS2121.2] Apply the concepts of classes, constructors and objects using Java programming constructs.
[IIS2121.3] Write interactive programs using the concepts of Polymorphism, input/output basics, arrays
and strings.
[IIS2121.4] Implement the concepts of inheritance and abstraction forms using Java code constructs like
Classes, Interfaces and Packages and exception handling.
[IIS2121.5] Create the solutions of real-life problems using the concepts of multithreading, AWT and
collection framework.
B. PROGRAM OUTCOMES AND PROGRAM SPECIFIC OUTCOMES

PO1. Engineering knowledge: Apply the knowledge of mathematics, computer science, and
communication engineering fundamentals to the solution of complex engineering problems.

PO2. Problem analysis: The sophisticated curriculum would enable a graduate to identify,
formulate, review research literature, and analyse complex engineering problems reaching
substantiated conclusions using basic principles of mathematics, computing techniques and
communication engineering principles.

PO3. Design/development of solutions: Upon analysing, the B Tech CCE graduate should
be able to devise solutions for complex engineering problems and design system components
or processes that meet the specified requirements with appropriate consideration for law,
safety, cultural & societal obligations with environmental considerations.

PO4. Conduct investigations of complex problems: To imbibe the inquisitive practices to


have thrust for innovation and excellence that leads to use research-based knowledge and
research methods including design of experiments, analysis and interpretation of data, and
synthesis of the information to provide valid conclusions.
PO5. Modern tool usage: Create, select, and apply appropriate techniques, resources, and
modern engineering and IT tools including prediction and modelling to complex engineering
activities with an understanding of the limitations.

PO6. The engineer and society: The engineers are called society builders and transformers.
B. Tech CCE graduate should be able to apply reasoning informed by the contextual
knowledge to assess societal, health, safety, legal and cultural issues and the consequent
responsibilities relevant to the professional engineering practice.

PO7. Environment and sustainability: The zero effect and zero defect is not just a slogan,
it is to be practised in each action. Thus a B Tech CCE should understand the impact of the
professional engineering solutions in societal and environmental contexts, and demonstrate
the knowledge of, and need for sustainable development.

PO8. Ethics: Protection of IPR, staying away from plagiarism are important. Student should
be able to apply ethical principles and commit to professional ethics, responsibilities and
norms of the engineering practice.

PO9. Individual and teamwork: United we grow, divided we fall is a culture at MUJ. Thus
an outgoing student should be able to function effectively as an individual, and as a member
or leader in diverse teams, and in multidisciplinary settings.

PO10. Communication: Communicate effectively for all engineering processes & activities
with the peer engineering team, community and with society at large. Clarity of thoughts,
being able to comprehend and formulate effective reports and design documentation, make
effective presentations, and give and receive clear instructions.

PO11. Project management and finance: Demonstrate knowledge and understanding of


the engineering and management principles and apply these to one’s own work, as a member
and leader in a team, to manage projects and in varied environments.

PO12. Life-long learning: Recognize the need for, and have the preparation and ability to
engage in independent and life-long learning in the broadest context of technological change.

PROGRAM SPECIFIC OUTCOMES (PSOs):

[PSO.1] Imbibe the basic concepts and applications of computer-based Communication or


networking, information sharing, signal processing, web-based systems, smart devices, and
communication technology.

[PSO.2] Investigate prominent areas in the field of Computer and Communication


Engineering to provide feasible solutions.

[PSO.3] Apply the contextual knowledge in the field of Computing and Communication to
assess social, health, safety, and security issues relevant to the professional engineering
practice.

C. Assessment Plan:

Criteria Description Maximum Marks


Internal Assessment One Midterm Exam (Closed Book) 30
(Summative)
Continuous Assessment 2 Quizzes (2.5+2.5=5) 30
Classroom activity (10)
NPTEL course certification(15)
End Term Exam End Term Exam (Closed Book) 40
(Summative)
Total 100
Attendance A minimum of 75% Attendance is required to be maintained by a student to be
(Formative) qualified for taking up the End Semester examination. The allowance of 25%
includes all types of leaves including medical leaves.
Homework/ Home There are situations where a student may have to work at home, especially
Assignment/ Activity before a flipped classroom. Although these works may or may not be graded
Assignment with marks. However, a student is expected to participate and perform these
(Formative) assignments with full zeal since the activity/ flipped classroom participation by
a student will be assessed and marks will be awarded.

D. SYLLABUS

Introduction: history and evolution of OOP, Introduction to OOPS and classes: class and object
fundamentals, introduction to methods/functions, introduction to JDK, JRF and JVM, variables and
data types, Unicode system, naming conventions, object initialization constructors and garbage
collection, this keyword, overloading, objects as parameters, argument passing, returning objects,
recursion, access control, classes within classes, string class; I/O basics: reading console input,
writing console output, files; Inheritance: basics, multilevel hierarchy, overriding, abstract classes;
Packages and Interfaces; exception handling; Multithreaded programming; String handling; Event
handling; GUI and Introduction to AWT: classes, component, container, panel, window, frame,
canvas, working with frame; The collection framework: array list and vector, sets, map; Database
programming using JDBC; Java Server Technologies: servlet.
E. REFERENCE BOOKS
1. H. Schildt, Java: The Complete Reference, (10e), McGraw Hill, 2017.
2. C. Horstmann, Core Java Volume-1 Fundamentals, (11e), Prentice Hall of India, 2020.
3. 3. S. Holzner, Java 8 programming Black Book, (1e), Dream Tech, 2015.
4. 4. P. Deitel, H. Deitel, Java How to Program, (11e), Pearson Education, 2018.
5. 5. E. Balagurusamy, Programming with Java: A Primer, (5e), McGraw Hill, 2017
F. Lecture Plan:

Class Topics Session Outcome Mode of Corresp Mode of


Delivery onding Assessing the
Number
Course Outcome
Outcom
1 Introduction and Course Hand-out briefing To acquaint and clear teacher’s expectations and Lecture NA e NA
understand student expectations
Object-Oriented Programming Paradigm Introduction: Objects, Identify and implement the concept of OOP Java Lecture CO 1 Mid Term,
2 Quiz & End
Classes, Encapsulation, Polymorphism, Inheritance
Term
Java Basics: Compilation and Execution of a Java program, Describe the programming constructs of OOP with Java Lecture CO 1 Mid Term,
3-4 Quiz & End
Java Compiler and Interpreter, Data Types in Java
Term
Apply and describe the concept of interaction for classes Lecture CO 2 Mid Term,
Class Definition and Object Creation: Instance-
5-8 and its methods Quiz & End
Fields/Attributes, Methods, Access Modifiers Term

Identify and implement the concepts of constructors, class Lecture CO 2 Mid Term,
Constructors, Object vs Class Variables; Role of static and and objects. Quiz & End
9-12 final keywords in Java, Type Conversion and Promotion Term

Understand the concepts of method overloading Lecture CO 3 Mid Term,


Polymorphic Forms: Method Overloading, Objects as
13-15 Quiz & End
Parameters and return types Term

Analyse the I/O basics of OOP Java Lecture CO 3 Mid Term,


Input-Output: Reading Input and Output in Java; Object
Quiz & End
16-18 Class in Java: String form of an Object via toString() method,
Term
Object equality method
Arrays and Strings in Java: 1-D Arrays, 2-D and Multi- Implement and practice the arrays and string in Java Lecture CO 1 & Mid Term,
19-21 dimensional arrays, Variable Size array, Strings in Java via CO 3 Quiz & End
Term
String, StringBuilder and StringTokenizer classes;

Inheritance in Java: Extending classes, abstract classes, final Examine and describe the concept of Inheritance of OOP Lecture CO 3 & Quiz & End
22-25 classes, Method Overriding, Runtime Polymorphism, Inner Paradigm CO 4 Term
Classes – static and non-static nested Classes, Local Classes
Inheritance via Interfaces: class vs interface, defining Experiment the access control using classes and interfaces Lecture CO 4 Quiz & End
26-28 Term
interfaces, implementing multiple inheritance

Recall and implement exceptions in classes Lecture CO 4 Quiz & End


Exception Handling: Exceptions, Defining and Creating Term
29-30
Exceptions, Use of Exceptions in Real Life Problems

Experiment the access control using package and interfaces. Lecture CO 4 Class activity,
31-32 Package in Java: Defining Packages, importing packages Quiz & End
Term

Multithreading: Thread class, Runnable interface, thread life Implement and describe the concept of multithreading Lecture CO 5 Class activity,
33-34 Quiz & End
cycle, synchronization, thread priority.
Term
Package: AWT - classes, component, container, panel, Implementation of GUI application and event handling Lecture CO5 Class activity,
35-36 concepts Quiz & End
window, frame, canvas, working with frame
Term
Usage of collection framework components and to use in Lecture CO5 Class activity,
37-40 Collection framework: array list and vector, sets, map. an application building Quiz & End
Term
Able to connect the database with the Java application Lecture CO5 Class activity,
41-42 Database programming using JDBC Quiz & End
Term
Learn to use server side programming in Java Lecture CO5 Class activity,
43-44 Java Server Technologies: Servlet. Quiz & End
Term
G. Course Articulation Matrix: (Mapping of COs with POs & PSOs)

CO STATEMENT Correlation with Program Outcomes (POs) Correlation with


Program Specific
Outcomes (PSOs)
PO 1 PO 2 PO 3 PO 4 PO 5 PO 6 PO 7 PO 8 PO 9 PO 10 PO 11 PO 12 PSO 1 PSO 2 PSO 3
[IIS2121.1] Identify the OOP concepts, working of JVM, JDK,
JRE, Unicode System, variables and data types in 2 - -
3 1 2 - 2 - - - 1 - - 1
Java.
[IIS2121.2] Apply the concepts of classes, constructors and
2 - -
objects using Java programming constructs. 3 1 2 1 2 - - - 1 - - 1
[IIS2121.3] Write interactive programs using the concepts of
Polymorphism, input/output basics, arrays and 3 - -
3 2 2 1 2 - - - 1 - - 1
strings.
[IIS2121.4] Implement the concepts of inheritance and
abstraction forms using Java code constructs like
2 - 2
Classes, Interfaces and Packages and exception
3 3 2 1 2 - - - 1 - - 1
handling.
[IIS2121.5] Create the solutions of real-life problems using the
concepts of multithreading, AWT and collection 3 3 3 1 3 - - - 1 - - 2 2 - 2
framework.

1- Low Correlation; 2- Moderate Correlation; 3- Substantial Correlation

Course Coordinator Course Instructor(s) Class Representative Head of Department

You might also like