Java Programming Course Outline
Java Programming Course Outline
College/Faculty:___________________________________________________
Course Title: Java Programming
Course Code: CoSc3053
Credit Hrs.: 3 ECTS: 5 Lecture Hrs.: 2 Lab Hrs.: 3 Tutorial Hrs. 2
Prerequisite: CoSc 2051- Object Oriented Programming
Course Category: Compulsory
Year III Semester I
Course Description
This course covers topics on Java which includes: AWT and Swing, I/O Streams, Multi-threading,
Network Programming, Java database connectivity (JDBC), RMI, and
Introduction to Servlets.
Course Objectives
At the end of this course, students should be able to:
➢ Carry out design and development of complex elements, such as user interfaces, multiprocessing,
and fault-tolerant components;
➢ Write TCP/IP Client Server applications using Sockets;
➢ Write Java applications using the JDBC to make database independent queries; and Call methods
remotely.
Course Outline
Chapter 1: Overview of Java Programming (4hr)
1.1. Data types and variables
1.2. Arrays
1.3. Decision and Repetition statement
1.4. Exception Handling
1.4.1. Exception handling overview
1.4.2. Syntax
Chapter 2: Java Applet (2hr)
56
2.1. Overview of Java Applets
2.2. Java Applets Vs Java Application
Chapter 3: Java GUI using JAVAFX (8 hrs.)
3.1. JAVAFX architecture and Program structure
3.2. JAVAFX layout components
3.3. Basic UI controls
3.3.1. Event handlers
3.3.1. UI controls
3.4. Composite UI controls
3.5. Shapes
3.5.1. Color, Texts, Fonts
3.5.2. Lines, Circle, Rectangle
3.5.3. CSS styling
3.6. Properties and Bindings
3.7. Graphics and Animation
Chapter 4: Streams and File I/O (4hr)
4.1. Input output streams
4.1.1. Various stream classes
4.1.2. Using Streams
4.1.3. Object Streams
4.2. File management
Chapter 5: Multi-threading concept (4hr)
5.1. Thread vs process
5.2. Multiple threads
5.2.1. Thread priorities
5.2.2. Thread synchronization
Chapter 6: Networking in Java (3hr)
6.1. Networking overview
6.1.1. Types of connections
6.2. Socket programming
6.2.1. Socket, port and URI
57
6.2.2. Implementing Socket programming
6.3. Remote method invocation (RMI)
6.3.1. Overview of RMI
6.3.2. The RMI registry
6.3.3. The remote Interface
6.3.4. Implementing RMI
Chapter 7: Java - Database connectivity (4hr)
7.1. Introduction on database systems
5.1.1. Structured query language (SQL)
7.2. Basic JDBC programming concept
7.2.1. Populating database
7.2.2. Executing queries
7.2.3. Manipulating query results
Chapter 8: Servlets (3 hrs.)
8.1. Servlet overview and architecture
8.2. Handling HTTP methods (GET and POST requests)
8.3. Request redirecting
8.4. Multi-tier applications using JDBC from servlet
Teaching materials
Required Texts:
➢ S. Horstmann and Gary Cornell, Core Java 2 – Volume II- Advanced Features, Sun
Microsystems Press
58