CS 412-3
Programming Distributed Applications
Catalog Description
This course uses advanced features of the Java programming language to develop networked, distributed, and web-based applications. Topics covered include, but are not limited to, sockets, datagrams, the Java security model, threads, multi-tier architectures, Java RMI, Java database connectivity, and Java-based mobile agents.
Prerequisite:
CS 220 with a grade of C or better.
Objectives
1.Practical experience in developing network and distributed applications.
2.Learn advanced topics in Java.
Course Outline
| Lectures and Labs | ||
| 1. | Introduction to Networking Concepts
Computer Networks and the Internet Overview of OSI Reference Model Overview of TCP and UDP Hosts, Ports, Sockets and Datagrams Client/Server Architecture |
3 |
| 2. | Java Review
Review of object-oriented programming concepts Objects, Classes and Interfaces in Java Applications vs. applets Programming with Java class libraries |
6 |
| 3. | Stream Based I/O in Java
Overview of I/O streams Java's Stream Classes Object Serialization Exception Handling |
5 |
| 4. | Network Programming in Java
The java.net package Sockets Datagrams URLs Introdution to Java Security Model Introdution to Threads and Concurrent servers |
6 |
| 5. | Introduction to Distributed Computing
Distributed Systems Multi-Tier Architectures Basic RPC Mechanisms Distributed Objects |
5 |
| 6. | Distributed Computing With Java RMI
Remote Interfaces, Objects and Methods Passing Object Arguments via Serialization Generating Stubs and Skeletons Registering remote objects Locating and using remote objects |
5 |
| 7. | Java Database Connectivity
Structured Query Language Transaction Processing |
4 |
| 8. | Java-Based Mobile Agents
Software Agent Technology Agent Platforms |
6 |
| Total | 40 | |