Postgraduate Diploma in Java Programming with Android App Development, Cloud Computing and PHP Modules & Arranged Work Experience - Dublin City Centre (Full Time - 6 Months)

start date: 1 October 2014

The IT industry has shown an increased demand for IT Professionals that are skilled in Java Programming, due to the exponential growth of Java enabled devices and its popularity for being a stable, secure and robust platform.

This Full Time, lab-based course focuses on practical skills training and is set to the highest standard with the most up-to-date techniques and practices used  by Java Programmers in the industry today; it is delivered by an industry expert with outstanding industry experience.

The objective of this Java Programming course, is to enable students with little or no programming experience to learn programming using the Java programming language. Also, this course includes Arranged Work Experience (3 months) and will allow you to work on your CV and Interviewing Techniques with our Placement Officer in order to make yourself more marketable.

Our course includes additional modules in Android App Development, Cloud Computing and PHP Programming in order to give you a competitive advantage.

The Postgraduate Diploma in Java Programming is accredited by the Institute of Commercial Management and is Internationally Recognised in over 140 countries around the World. 


Overview of Java Standard Edition (Java SE) 7; Tools for programming in Java

Introduction to Java Applications:
Creating and Saving a Java program; Compile and Run a Java ; Modifying a Java Program ; Displaying Text with printf ; Arithmetic Operations ; Decision Making:Equality and Relational Operators

Introduction to Classes and Objects:
Classes, Objects, Methods and Instance Variables ; Declaring a Class with a Method and Instantiating an Object of a Class ; Declaring a Method with a Parameter ; Instance Variables, set Methods and get Methods ; Primitive Types vs. Reference Types ; Initializing Objects with Constructors ; Floating-Point Numbers and Type double

Control Statements:
if Single-Selection Statement ; if Ö else Double-Selection Statement ; while Repetition Statement ; Formulating Algorithms:Counter-Controlled Repetition ; Formulating Algorithms:Sentinel-Controlled Repetition ; Formulating Algorithms:Nested Control Statements ; Compound Assignment Operators ; Increment and Decrement Operators ; Primitive TypesEssentials of Counter-Controlled Repetition ; for Repetition Statement ; Examples Using the for Statement ; while Repetition Statement ; switch Multiple-Selection Statement ; break and continue Statements ; Logical Operators;

Methods and Method Calls:
static Methods, static Fields and Class Math ; Declaring Methods with Multiple Parameters ; Notes on Declaring and Using Methods ; Method-Call Stack and Activation Records ; Argument Promotion and Casting ; Java API Packages ; Random Numbers ; Scope of Declarations ; Method Overloading

Declaring and Creating Arrays ; Examples Using Arrays ; Enhanced for Statement ; Passing Arrays to Methods ; Multidimensional Arrays

Classes and Objects:
A Deeper Look: Time Class Case Study ; Controlling Access to Members ; Referring to the Current Object's Members with the this Reference ; Time Class Case Study:Overloaded Constructors ; Default and No-Argument Constructors ; Composition ; Enumerations ; Garbage Collection and Method finalize ; static Class Members ; static Import ; final Instance Variables ; Creating Packages

Object-Oriented Programming:Inheritance:
Superclasses and Subclasses ; protected Members ; Relationship between Superclasses and Subclasses ; Creating a Inheritance Hierarchy ; Constructors in Subclasses ; Software Engineering with Inheritance

Object-Oriented Programming:Polymorphism:
Polymorphism Examples ; Demonstrating Polymorphic Behavior ; Abstract Classes and Methods ; Case Study:Payroll System Using Polymorphism ; Demonstrating Polymorphic Processing, Operator instanceof and Downcasting ; Summary of the Allowed Assignments Between Superclass and Subclass Variables ; final Methods and Classes ; Creating and Using Interfaces ; Developing a Polymorphic Hierarchy ; Declaring Constants with Interfaces ; Common Interfaces of the Java API

GUI Components:
Simple GUI-Based Input/Output with JOptionPane ; Overview of Swing Components ; Displaying Text and Images in a Window ; Text Fields and an Introduction to Event Handling with Nested Classes ; Common GUI Event Types and Listener Interfaces ; How Event Handling Works ; JButton component ; Buttons That Maintain State ; JCheckBox component ; JRadioButton component ; JComboBox and Using an Anonymous Inner Class for Event Handling ; JList component ; Mouse Event Handling and Adapter Classes ; JPanel Subclass for Drawing with the Mouse ; Layout Managers ; Using Panels to Manage More Complex Layouts


Exception Handling:
Exception-Handling Overview ; Exception Handling Model; Try/Catch blocks ; When to Use Exception Handling ; Java Exception Hierarchy ; finally Block ; Stack Unwinding ; printStackTrace , getStackTrace and getMessage ; Chained Exceptions ; Declaring New Exception Types ; Assertions

Files and Streams:
Data Hierarchy ; Files and Streams ; Class File ; Sequential-Access Text Files ; Creating a Sequential-Access Text File ; Reading Data from a Sequential-Access Text File ; Updating Sequential-Access Files ; Object Serialization ; Reading and Deserializing Data from a Sequential-Access File ; Additional Classes ; Opening Files with JFileChooser

Collections Overview ; Class Arrays ; Interface Collection and Class Collections ; ArrayList class and Iterators ; LinkedList class ; Collections Algorithms ; Algorithm sort ; Algorithm shuffle ; Algorithms reverse, fill, copy, max and min ; Algorithm binarySearch ; Stack Class of Package java.util ; Class PriorityQueue and Interface Queue ; Sets ; Maps

Manipulating URLs ; Reading a File on a Web Server ; Establishing a Simple Server Using Stream Sockets ; Establishing a Simple Client Using Stream Sockets ; Client/Server Interaction with Stream Socket Connections ; Connectionless Client/Server Interaction with Datagrams ; Client/Server Tic-Tac-Toe Using a Multithreaded Server;

Accessing Databases with JDBC:
Relational Databases ; Relational Database Overview:The books Database ; SQL ; Basic SELECT Query ; WHERE Clause ; ORDER BY Clause ; Merging Data from Multiple Tables:INNER JOIN ; INSERT Statement ; UPDATE Statement ; DELETE Statement ; Instructions for installing MySQL and MySQL Connector/J ; Instructions for Setting Up a MySQL User Account ; Creating Database books in MySQL ; Manipulating Databases with JDBC ; Connecting to and Querying a Database ; Querying the books Database ; RowSet Interface ; Java DB/Apache Derby ; PreparedStatements ; Stored Procedures ; Transaction Processing

Google Android Application Development

The Basics:
Overview of the Android Platform; Applications (Apps) Defined; Comparison with Mobile Web; Alternatives to Android; Architecture Explained; Role of Java

Android SDK:
Eclipse IDE Plugin; Device Emulator; Profiling Tools; Hello World Application

Unit Testing and Debugging:
Creating Unit Tests; Android Development Tools (ADT); Running on the Emulator; Running on a Device; Java Debugging

Android User Interface:
View Hierarchy; Layout; Widgets; Menus

Styling Widgets:
Defining Styles; Applying Styles to the UI; Platform Styles and Themes

Handling Events:
Event Listeners; Event Handlers; Touch Mode; Focus

Handling Gestures:
Gesture Library; Recognizing Gestures

Storing and Retrieving Data:
Internal Storage; SQLite Database

Content Providers:
Querying Content Providers; Modifying Data; Creating a Content Provider

Location Services and Maps:
Location Services; Mock Location Data; Google Map Libraries

Using the Search Dialog; Adding Custom Suggestions; Search Configuration

Graphics, Audio and Video:
Drawing 2D Graphics; Playing Audio and Video; Capturing Audio

App Widgets:
Declaring an App Widget; Creating App Widget

App Marketplace:
Preparing your App ; Publishing your App ; Supporting your App ; Mobile Ads

Accessing RESTful Services:
REST; DOM Parsing; SAX Parsing; JSON Parsing; Using Spring

Writing Apps that use C2DM:
Lifecycle Flow; Creating the Manifest; Registering for C2DM; Handling Received Data; Developing and Testing Apps

Web Applications:
Web Apps Overview; Targeting Screens from Web Apps; WebView; Debugging Web Apps; Best Practices for Web Apps

Best Practices:
Compatibility; Supporting multiple screens; Optimizing for Android 3.0; UI Guidelines; Java Debugging

Internet and Web Cloud Computing

Web Applications:
Glassfish and Apache System Application Server; Simple HTTP Transactions; Multitier Application; Architecture; Core HTML, JavaScript and CSS; Core XML; Java Web Technologies; Servlets; JavaServer Pages; JavaServer Faces; Web Technologies in Netbeans; Creating and Running a Simple Application in Netbeans; Creating a JSP File; Creating a Page Bean File; Event-Processing Life Cycle; Relationship Between the JSP and Page Bean Files; Examining the XHTML Generated by a Java Web Application; Building a Web Application in Netbeans; JSF Components; Text and Graphics Components; Validation Using Validator Components and Custom Validators; Session Tracking; Cookies; Session Tracking with the SessionBean Object; Accessing Databases in Web Applications; Building a Web Application that Displays Data from a Database; Modifying the Page Bean File for the AddressBook Application; Ajax-Enabled JSF Components; Java BluePrints Component Library; AutoComplete Text Field and Virtual Forms; Configuring Virtual Forms; JSP File with Virtual Forms and an AutoComplete Text Field; Providing Suggestions for an AutoComplete Text Field; Using the Google Maps Map Viewer Component in a Web Application.

JAX-WS Web Services:
Java Web Services Basics; Creating, Publishing, Testing and Describing a Web Service; Defining the a Web Service; Publishing the Web Service; Testing Web Service with Glassfish Web page; Describing a Web Service with the Web Service Description Language (WSDL); Consuming a Web Service; SOAP; Session Tracking in Web Services; Consuming a Database-Driven Web Service from a Web Application; Passing an Object of a User-Defined Type to a Web Service.

Cloud Computing Services and Java:
Fundamental Cloud Computing Terminology and Concepts; Virtualization; Specific Characteristics that Define a Cloud; On-Premise Services vs. Cloud Services; Understanding Elasticity, Resiliency, On-Demand and Measured Usage; Benefits, Challenges and Risks of Contemporary Cloud Computing Platforms and Cloud Services; Understanding How Cloud Consumers and Cloud Providers Relate; Cloud Resource Administrator and Cloud Service Owner Roles; Cloud Service and Cloud Service Consumer Roles; Organizational and Trust Boundaries; Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) Cloud Delivery Models.

C Google App Engine Cloud Platform:
Overview of the Google App Engine; Creating a Google App Engine Account; The Java Runtime Environment on Google App Engine; Creating a Java Project on Google App Engine; appengine-web.xml; Using the Users Service; Using JSPs and Servlets with the Google App Engine; Using the Datastore; NoSQL; Using Static Files; Uploading Your Application; Browsing your Application; Securing your cloud Applications; Email handling; Cron jobs; Logging.

PHP, or PHP: Hypertext Preprocessor, has become one of the most popular server-side scripting languages for creating dynamic web pages. It is estimated that over 17 million domains now use PHP, accounting for more than 20% of web pages. 

PHP is an open-source technology that is supported by a large community of users and developers. PHP is platform independent—implementations exist for all major UNIX, Linux, Mac and Windows operating systems. PHP also supports many databases, including MySQL.

After introducing the basics of the PHP scripting language, we discuss form processing and business logic, which are vital to e-commerce applications. Next, we build a three-tier web application that queries a MySQL database. We also show how PHP can use cookies to store information on the client that can be retrieved during future visits to the website. We also demonstrate PHP's powerful form processing capabilities.

  • Overview of PHP
  • Installing PHP
  • The ZEND engine
  • PHP Program constructs
  • Converting Between Data Types
  • Arithmetic Operators
  • Initializing and Manipulating Arrays
  • String Processing with Regular Expressions
  • Dynamic Content
  • Form Processing and Business Logic
  • Superglobal Arrays
  • PHP to Process HTML5 Forms
  • Reading and updating a  Database
  • Using Cookies


This course offers practical industry learning through: Lectures, Discussions, Role-Plays, Practical Exercises, Projects, Case Studies, etc.


Fitzwilliam Institute Group maintains a panel of qualified and motivated lecturers who work as a team monitoring each student's progress.

JAVA PROGRAMMING COURSE: Application Process - Who Should Apply

Graduates or mature applicants who are interested in developing a career in Java Programming or Application Development. Selection is based on consultation and academic achievement. Early application is advisable as places are limited. If you wish to be considered for this course please download the application form here and forward it to us at and contact us on 01 283 4579 to arrange a consultation.


Computer Programmer, Software Developer, Java Developer, App Developer, Software engineer, Software Test, Software Design, IT consultant, Software Trainer.


Successful candidates are awarded the Postgraduate Diploma in Java Programming (PG Dip. Java Prog.) at Pass, Credit or Distinction level. The Postgraduate Diploma is awarded by the Institute of Commercial Management.

Certification is awarded by the Institute of Commercial Management (ICM).

The Institute of Commercial Management was founded in 1979 and is one of the leading Professional Examination and Certification Bodies in the world today.

Fitzwilliam Institute Group, have developed and provided Practical Skills Training Courses in liaison with the Institute of Commercial Management Qualifications and Certifications framework for over 25 years.

Institute of Commercial Management certifications are recognised throughout Europe, the USA, Canada, South Africa and Asia in a total of 140 countries, by leading industries, bodies and professions.

next start date: 1st October 2014 (Wednesday)


There is an additional charge of €190 to cover examination fees.

Enrolment Intake is Strictly Limited on this Course. Early Application is Advised.

Places are allocated on a first come first served basis.

To Secure your place on the course a Deposit of 20% (€800) is required.

The remainder (€3240) is due 30 days prior to the commencement of the course.

All fees must be paid before the course begins.

Year on year, we successfully place our students into a 3-month organised work placement as part of their full-time Postgraduate Diploma. Over 95% of our participants end up in full time employment with their placement company, with many carving a long and rewarding career. A significant number of our past graduates are now senior figures in these industries today. See some of our most recent placement companies below and find out what they have to say.