Advanced Java Programming - Syllabus
Embark on a profound academic exploration as you delve into the Advanced Java Programming course () within the distinguished Tribhuvan university's CSIT department. Aligned with the 2065 Syllabus, this course (CSC-403) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60+20+20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.
This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.
Units
Key Topics
-
Java Fundamentals
PR-101Introduction to Java architecture, buzzwords, and environment setup including Path and ClassPath variables. Understanding the basic structure of a Java program, compiling, and running Java programs.
-
Object-Oriented Programming
PR-102Understanding classes, objects, and interfaces in Java. Topics include overloading, access privileges, inner classes, final and static modifiers, packages, inheritance, and overriding.
-
Exception Handling
PR-103Handling exceptions in Java using try, catch, finally, throws, and throw keywords. Creating custom exception classes to handle errors and exceptions.
-
Concurrency
PR-104Introduction to concurrency in Java, including thread states, writing multithreaded programs, thread properties, thread synchronization, and thread priorities.
Key Topics
-
Introduction to AWT and Swing
US-1This topic introduces the concept of AWT, compares AWT with Swing, and covers Java Applets, Applet Life Cycle, Swing Class Hierarchy, and Component and Containers.
-
Layout Management
US-2This topic covers various layout management techniques including No Layout, Flow layout, Border Layout, Grid Layout, Gridbag Layout, and Group Layout.
-
GUI Controls
US-3This topic explores various GUI controls such as Text Fields, Password Fields, Text Areas, Scroll Pane, Labels, Check Boxes, Radio Buttons, Borders, Combo Boxes, and Sliders.
-
Menu and Toolbar Management
US-4This topic covers menu and toolbar management including Menu, Menu Item, Icons in Menu Items, Check Box and Radio Buttons in Menu Items, Pop-up Menus, Keyboard Mnemonics and Accelerators, Enabling and Disabling Menu Items, and Toolbars.
-
Option Dialogs and Frames
US-5This topic discusses option dialogs, creating dialogs, File Choosers, Color Choosers, Internal Frames, Frames, Tables, Trees, and Tables.
-
Dialog Boxes
US-6Creating and customizing dialog boxes, including option dialogs, file choosers, and color choosers.
-
Components Organizers
US-7Organizing components using Split Panes, Tabbed Panes, Desktop Panes, Internal Frames, and cascading and tiling.
-
Advance Swing Components
US-8Exploring advanced Swing components including List, Trees, Tables, and Progress Bars.
Key Topics
-
Event Handling Concept
EV-1Understanding the concept of event handling in Java, including the role of listeners and event sources. This topic lays the foundation for handling events in Java applications.
-
Listener Interfaces
EV-2Exploring the different listener interfaces in Java, including their methods and usage. This topic covers the interfaces that must be implemented to handle events.
-
Using Action Commands
EV-3Learning how to use action commands to handle events, including setting and getting action commands. This topic covers the basics of using action commands in event handling.
-
Adapter Classes
EV-4Understanding the role of adapter classes in event handling, including their usage and benefits. This topic covers how adapter classes simplify event handling.
-
Handling Action Events
EV-5Handling action events, including button clicks and other actions. This topic covers the specifics of handling action events in Java applications.
-
Handling Key Events
EV-6Handling key events, including key presses and releases. This topic covers the specifics of handling key events in Java applications.
-
Handling Focus Events
EV-7Handling focus events, including gaining and losing focus. This topic covers the specifics of handling focus events in Java applications.
Key Topics
-
Introduction to Databases
DA-1Introduction to databases, including examples and basic concepts.
-
Database Management System
DA-2Introduction to Database Management Systems (DBMS), including advantages and examples.
-
Database Users
DA-3Types of database users, including actors on the scene and workers behind the scene.
-
Benefits of Databases
DA-4Advantages and benefits of using databases.
Key Topics
-
Neurally Inspired Models of Information Processing
NE-1This topic explores models of information processing inspired by the structure and function of the brain. It introduces the concept of neural networks and their application to information processing.
-
Single-Layer Networks and Boolean Functions
NE-2This topic delves into the basics of single-layer neural networks and their relationship with Boolean functions. It covers the fundamentals of neural network architecture and its application to simple logical operations.
-
Multilayer Networks
NE-3This topic builds upon the basics of single-layer networks and explores the architecture and functionality of multilayer neural networks. It discusses the advantages and limitations of multilayer networks in information processing.
Key Topics
-
Introduction to Java Beans
JA-01This topic introduces Java Beans, its advantages, and how it differs from a Java class. It also covers the basics of creating, updating, and reading from JAR files.
-
Creating a Java Bean
JA-02This topic covers the process of creating a Java Bean, including creating a Bean manifest file and a Bean JAR file.
-
Using and Customizing Java Beans
JA-03This topic explains how to use a new Bean, add controls to Beans, and give a Bean properties, bound properties, and methods.
-
Giving a Bean an Icon
JA-04This topic covers the process of giving a Bean an icon, enhancing its visual representation.
Key Topics
-
Challenges and Approach of E-government Security
SE-1This topic covers the challenges faced by e-government in terms of security and the approaches to address them. It explores the importance of security in e-government and the ways to mitigate risks.
-
Security Management Model
SE-2This topic introduces a security management model for e-government, outlining the key components and processes involved in ensuring the security of e-government systems.
-
E-Government Security Architecture
SE-3This topic delves into the architecture of e-government security, including the design and implementation of secure systems and infrastructure for e-government services.
-
Security Standards
SE-4This topic covers the security standards and guidelines for e-government, including international standards and best practices for ensuring the security of e-government systems and data.
-
Data Transaction Security
SE-5Security measures for protecting data during transactions in e-commerce.
-
Security Mechanisms
SE-6Various security mechanisms used in e-commerce including cryptography, hash functions, digital signatures, authentication, access controls, intrusion detection systems, and secured socket layer (SSL).
-
javax.servlet.http Package
SE-7Exploring the javax.servlet.http package, including key classes and interfaces. Understanding how to use the package to develop HTTP-based servlets.
-
Handling HTTP Requests and Responses
SE-8Understanding how to handle HTTP requests and responses using servlets, including request and response objects.
-
Using Cookies
SE-9Understanding how to use cookies in servlets, including setting and retrieving cookie values.
-
Session Tracking
SE-10Understanding how to track user sessions using servlets, including session creation and management.
-
Introduction to JSP
SE-11Introduction to JavaServer Pages (JSP), including their role in web development and key features.
Key Topics
-
Introduction to RMI
RM-1RMI (Remote Method Invocation) is a Java API that allows objects to communicate with each other over a network. This topic introduces the concept of RMI and its importance in distributed systems.
-
Client-Server Architecture
RM-2This topic explains the roles of client and server in an RMI system, including the responsibilities of each and how they interact with each other.
-
Remote Method Calls
RM-3Remote method calls allow a client to invoke methods on a remote server. This topic covers the process of making remote method calls and the underlying mechanisms.
-
Stubs and Parameter Marshalling
RM-4Stubs and parameter marshalling are essential components of RMI. This topic explains how stubs act as local representatives of remote objects and how parameter marshalling enables data transfer between client and server.
-
RMI Programming Model
RM-5The RMI programming model defines how to write RMI-based applications. This topic covers the principles and best practices of the RMI programming model.
-
Interfaces and Implementations
RM-6This topic explains the importance of interfaces and implementations in RMI, including how to define and use them to create remote objects.
-
RMI Registry
RM-7The RMI registry is a repository of remote objects. This topic covers how to use the RMI registry to bind, lookup, and unbind remote objects.
-
Parameters and Return Values
RM-8This topic explains how to handle parameters and return values in remote methods, including data types and serialization.