Java on Rational Application Developer RAD Training

Duration: 5 days
Course code: SS-JAV-015

  • Application Developers
  • Programmers
  • System Designers

Experience with at least one structured programming language is assumed


Our Java Rational Application Developer training course offers a comprehensive coverage of the Java programming language. The first part of the course covers the syntactic and semantic structures of the Java Programming Language. In the next part of this course we introduce concepts in Object Oriented design and the Java Object Model. This is followed by an in-depth coverage of all the language features including advanced features, such as Generics, Threads, Inner & Anonymous classes, Packages, Reflection and Exceptions. This course also includes the best practices of designing and implementing extension to the various Java libraries, such as graphics (Swing), networking (net) and database (SQL) are introduced. Course labs can be delivered on various integrated development environments (IDEs). In this Java on Rational Application Developer (RAD) training course, the students will be using the latest version of the Eclipse IDE.

This Java on Rational Application Developer (RAD) training course is specially designed for programmers seeking to design and develop applications using the latest Java Standard Edition (JSE). Based on SciSpike's well-received training methodologies, the course provides for a rapid and efficient transition to object-oriented software development using JSE. The attendees are expected to be familiar with some other structured programming language. Experience with object orientation would be helpful but is not required.

This five-day Java training course covers topics in object-orientation, the basics of programming using Java, including syntax, compilation, packaging and deployment. The JSE class library and architecture are also covered as well as multi-threaded programming in Java. Other topics covered include concepts in "Interface based design for de-coupled and concurrent development". The Java class libraries covered include: Java utilities, input and output (I/O), a brief introduction to graphical user interfaces development using the Java Swing library, parameterized classes using Generics and an introduction to the Java Database Connectivity (JDBC).

The course also teaches you how to develop Java applications using Rational Application Developer (RAD). Coverage includes Workspace, Java Projects, Java Perspective, Editor, Debugger, Run-time configuration, Execution and Packaging.

This course consists of a large number of fully worked out example code illustrating various concepts introduced during the course. The concepts are further reinforced through the use of well-crafted exercises at appropriate points throughout the course.


SciSpike's goal is to transfer as much knowledge as possible from the classroom to the workplace. This course has been carefully designed to ease the student into new concepts with the use of lots of exercises, labs, and sample code. At the end of this course, students should:

  • Have a firm understanding of the Java architecture
  • Identify basic concepts of Object Oriented design
  • Be able to implement Object Oriented based applications
  • Be able to design and implement effective Java programs
  • Be able to effectively use the IDE
  • Be able to build multi-threaded programs using Java
  • Have the necessary foundation to pursue advanced topics in Java

Outline for Java Rational Application Developer Training Course

Java Basics

  • Java Object Model
  • Class definitions
  • Class and instance variables
  • Basic data types
  • Inheritance and code reuse
  • Data encapsulation and access protection
  • Compilation and the Java run-time environment
  • The "String" and "System" classes
  • Basic Java application

Rational Application Developer (RAD)

  • Workspace
  • Java Project
  • Java Perspective
  • Java Editor
  • Using the Class and Interface Wizards
  • Java Debugger
  • Configuring the run-time
  • Executing Java Programs
  • Packaging Java Applications

Java Interfaces

  • Design by contract
  • Java Interface
  • De-coupled design
  • Using the factory design pattern
  • Implementing multiple inheritance

Java Packages

  • Name spaces
  • Standard Java conventions
  • File system dependencies
  • Access protection

Error Handling

  • Java Exceptions
  • Separating business logic from error handling logics
  • Using "try", "catch" and "finally"
  • Throwing exceptions
  • Checked and unchecked exceptions
  • Navigating the stack trace
  • Repackaging and re-throwing exceptions


  • Concurrent and parallel programming
  • Deadlocks
  • Thread Class
  • Managing groups of threads using Thread Group
  • Managing thread priorities
  • Thread Synchronization
  • Designing cooperating multithreaded applications
  • Using the "Runnable" interface

Java Class Library

  • JSE Class Library Architecture
  • Naming conventions
  • Java Utility Package (java.util)
  • Collections Library
  • Storage Structures ( Array, Vector, HashMaps etc.)
  • Aggregation operations

Input and Output

  • The class Library
  • Input and Output structure
  • Handling textual data with "Reader" and "Writer" streams
  • File System I/O

Basic Graphics

  • The Java graphics framework
  • Abstract Windowing Toolkit (java.awt)
  • The Java Swing Library (javax.swing)
  • The Java event model
  • Basic UI elements
  • Labels
  • TextFields
  • Buttons
  • Panels
  • Frames
  • Event Processing and Propagation
  • Handling Graphical Events using Event Listeners

Java and the Web

  • Web-based client Development
  • The java.applet package
  • Issues in network security
  • The java "Sandbox" model of security
  • Applet limitations
  • Building an applet-based application


  • The case for Generics
  • Parameterized classes and methods
  • Nested and Multi Generics
  • Wildcards, Erasure and Casting

Java Database Connectivity (JDBC)

  • Fundamentals of Database Programming
  • Using the JDBC API
  • JDBC connectivity types
  • Bridging technology
  • Native API
  • Middleware
  • Pure Java Drivers
  • Loading JDBC drivers
  • Connection
  • Statements
  • ResultSets
  • Meta Data

Comments are closed.