Course Title: Advanced Java Programming


Course Code: CSC-403                                                                                            Full marks:60+20+20
Credit Hours:  3                                                                                                       Pass Marks: 24+8+8
Nature of the course:  Theory (3 Hrs.) +Lab (3 Hrs)
Course Synopsis: A study in Java language techniques beyond the introductory course. Emphasis will include, GUI and event-driven programming, Database Connectivity, Socket Programming, Remote Method Invocation and Servlets and JSP Technology

Goal: The purpose of this course is to present the concept of GUI programming and JDBC, Socket programming and remote objects, and JSP Technology. Since software components are best learned by implementation, each student will complete a project independently which will involve the design and implementation three software components.

Course Contents:

Unit 1: Programming in Java                                                                                                 8 Hrs.
1.1 Introduction to Java: Java Architecture, Advantages of Java, PATH and CLASSPATH variables, Compiling and Running Java Programs
1.2 Class and Object: Creating Classes, Interfaces, Creating Objects, Access Modifiers, Arrays, Packages, Inheritance
1.3 Exception Handling and Threading: Try, Catch, Finally, Throws, Creating Multithreaded Programs, Thread Life Cycle
1.4 File IO: Byte Stream Classes (FilleInputStream and FileOutputStream), Character Stream Classes(FileReader and FileWriter), RandomAccessFile Class

Unit 2: User Interface Components with Swing                                                               10 Hrs.
2.1 Swing and MVC Design Patterns: Design Pattern, MVC Pattern, MVC Analysis of Swing Buttons
2.2 Layout Management: Border Layout, Grid Layout, Gridbag Layout, Group Layout, Using No Layout managers, Custom layout Managers
2.3 Text Input: Text Fields, Password Fields, Text Areas, Scroll Pane, Label and Labeling Components
2.4 Choice Components: Check Boxes, Radio Buttons, Borders, Combo Boxes, Sliders
2.5 Menus: Menu Building, Icons in Menu Items, Check box and Radio Buttons in Menu Items, Pop-up Menus, Keyboard Mnemonics and Accelerators, Enabling and Design menu Items, Toolbars, Tooltips
2.6 Dialog Boxes: Option Dialogs, Creating Dialogs, Data Exchange, File Choosers, Color Choosers
2.7 Components Organizers: Split Panes, Tabbed Panes, Desktop Panes and Internal Frames, Cascading and Tiling
2.8 Advance Swing Components: List, Trees, Tables, Progress Bars

Unit 3: Even Handling                                                                                                      4 Hrs.
3.1 Introduction: Standard Event Handling, Using Delegated Class, Using Action Commands, Listener Interfaces, Adapter Classes
3.2 Handling Events: Action Events, Key Events, Focus Events, Window Event, Mouse Event, Item Events

Unit 4: Database Connectivity                                                                                       4 Hrs.
4.1 Design of JDBC: Driver Types, Typical Uses of JDBC
4.2 JDBC Configuration: Database URLS, Driver JAR Files, Starting Database, Registering Driver class, Connecting to the database
4.3 Executing SQL Statements:  Managing Connections, Statements, Result Set, SQL Exceptions, Populating Databse
4.4 Query Execution: Prepared Statements, Reading and Writing LOBs, SQL Escapes, Multiple Results, Scrollable Result Sets, Updateable Result Sets, Row Sets and Cached Row Sets, Transactions.

Unit 5: Network Programming                                                                                         5 Hrs.
5.1 Networking Basics: Transmission control Protocol(TCP), User Datagram Protocol (UDP), Ports, IP Address Network Classes in JDK
5.2 Working with URLS: Connecting to URLS, Reading Directly from URLS, InetAddress Class
5.3 Sockets: TCP Sockets, UDP Sockets, Serving Multiple Clients, Half Close, Interruptible Sockets, Sending Email

Unit 6: Java Beans                                                                                                              3 Hrs.
6.1 Introduction: Creating, Updating and Reading From JAR Files, Java Beans, Advantages of Java Beans, Class vs Beans, BDK and Bean Box
6.2 Java Bean: Creating a Java Bean, Creating a Bean Manifest File, Creating a Bean JAR File, Using a New Bean, Adding Controls to Beans, Giving a Bean Properties, Creating Bound Properties, Giving a Bean Methods, Giving a Bean an Icon

Unit 7: Servlets and Java Server pages                                                                             8Hrs.
7.1 Servelets: Introduction to Servlets,Life cycle of servlets, Java Servlets Development Kit, Creating, Compiling and running servlet, The servlet API ( javax.servlet package), Reading the servlet Parameters, Reading Initialization parameter, The javax.servlet.http.Package, Handling HTTP Request and Response (GET / POST  Request), Using Cookies, Session Tracking
7.2 Java Server Pages:  Advantage of JSP technology (Comparision with ASP / Servlet), JSP Architecture, JSP Access Model, JSP Syntax Basic (Directions, Declarations, Expression, Scriplets, Comments), JSP Implicit Object, Object Scope, Synchronization Issue, Exception Handling, Session Management, Creating and Processing Forms.

Unit 8: RMI and CORBA                                                                                                    3Hrs.
8.1 Remote Method Invocation: Introduction of RMI, Architecture of RMI, Remote Objects, Creating and Executing RMI Applications
8.2 CORBA: Introduction to CORBA, Architecture of CORBA, Functioning of CORBA Applications, CORBA Services


Laboratory Works: Student should design at least two Projects. Desktop Application (Address Book, Library system etc), Simple network Application (e.g. Chatting Application) or Simple Web Applications (online banking Application, Online Music Application, etc)

Reference Books:

    Cay Horstmann and Grazy Cornell, Core Java Volume I-Fundamentals, Eighth Edition
    Cay Horstmann and Grazy Cornell, Core Java Volume II-Advance Features, Eighth Edition
    Steven Holzner, Java 2 Pagramming-AWT, Swing, XML and Java Beans Black Book, Dreamtech Press
    Pallvi Jain and Shadab Siddiqui, J2EE Professional Projects, Premier Press

 Prerequisites: Any One Course in Object Oriented Programming

0 comments:

Post a Comment

.

.