Advanced Computer Programming (CS2153)

Pre-requisite(s)

Object Oriented Programming (CS-2134)

Recommended Book(s)

Java In A Nutshell 4th  Edition David Flangan O’Reilly

Client/Server Programming With Java And CORBA: Orfali And Harkey (Wiley)

Online Java Tutorials And API Documentation 

Reference Book(s)

Foundations Of Multithreaded, Parallel, And Distributed Programming: Gregory R. 

Course Objectives

The students will gain exposure to and experience of superior levels of productivity with modern computing technologies. The course will help to utilize the incredible power of component oriented and distributed computing to create effective, scalable, maintainable, and adaptable applications to solve an extremely wide range of problems.

Course Learning Outcomes (CLO)

Course Objectives

Course Contents

Introduction to Java basic features

Course overview
Development environment
Java Features
Constructs
Interfaces
System APIs

Serialization and Externalization

Object Persistence and Serialization
Java object persistence model
Serializable interface
Serialization and Externalization

Multithreading and Synchronization

Multithreading and synchronization constructs
Concepts and implementation in Java
Reflection

Networking

Network programming overview
Advanced Socket Programming
Writing client/server and peer to peer applications
Understanding distributed computing concepts
Java distributed programming model
Difference between local and distributed computing
Remote method invocation
system architecture
client interfaces
server interfaces
registry interfaces
stub/skeleton interfaces
garbage collection
exceptions
RMI Advance concepts

 Graphical User Interface

Graphical User Interface
Event Handling

Java Database Connectivity

Understanding Database Connectivity
Establishing database connection using JDBC
Executing SQL statements and processing result sets

XML

Writing Extensible Markup Language XML documents
Parsing XML documents using Java XML Parser
Building and managing DOM tree

Servlets

Java Servlets
Writing generic and HTTP Java Servlets
Understanding Java Servlet containers
Java Servlet directory structure
deploying servlets in servlet containers

Java Naming Directory

Naming and directory services
Concepts and using Java Naming and Directory Interfaces APIs 

Mapping of CLOs to Assessment Modules

Final Exam

Assignments 

Surprise Tests/Quizzes

Project

Midterm Exam