Object Oriented Programming and Java for Beginners

Course

In Carshalton

£ 1,000 + VAT

Description

  • Type

    Course

  • Level

    Beginner

  • Location

    Carshalton

  • Duration

    5 Days

This is a course for those with relatively little programming experience for whom Java will be their first encounter with an object oriented programming language. It concentrates on those parts of Java that form the Java Standard Edition (JavaSE) The introductory part of the course covers the principles of object oriented thinking and the use of UML to describe object oriented designs. Suitable for: The course is aimed at programmers who have not used object oriented programming techniques or written code in an object oriented programming language and who are about to embark on their first Java project. It is also suitable for technical project managers and analysts who need to get hands on experience and insights into Java programming and UML.

Facilities

Location

Start date

Carshalton (Surrey)
See map
1-3 Fairlands House, SM5 2HW

Start date

On request

About this course

Experience with web technology, although useful, is not essential, as the relevant concepts will be explained where needed. The course will also introduce and explain UML notation where appropriate, and how the various UML diagrams show relate to underlying Java Code. The Integrated Development Environment used on this course will be Eclipse, running on either Linux or Windows platforms. This course can also be run on MacOSX platforms.

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Subjects

  • Oriented Programming

Course programme

Intended Audience

The course is aimed at programmers who have not used object oriented programming techniques or written code in an object oriented programming language and who are about to embark on their first Java project. It is also suitable for technical project managers and analysts who need to get hands on experience and insights into Java programming and UML.

Experience with web technology, although useful, is not essential, as the relevant concepts will be explained where needed. The course will also introduce and explain UML notation where appropriate, and how the various UML diagrams show relate to underlying Java Code. The Integrated Development Environment used on this course will be Eclipse, running on either Linux or Windows platforms. This course can also be run on MacOSX platforms.

Course Overview

This is a course for those with relatively little programming experience for whom Java will be their first encounter with an object oriented programming language.

It concentrates on those parts of Java that form the Java Standard Edition (JavaSE) The introductory part of the course covers the principles of object oriented thinking and the use of UML to describe object oriented designs.

Key Skills Learned
  • Understanding of the principles of object oriented thinking and of UML
  • Ability to build standalone Java applications and Applets
  • Understand how to build portable Graphical User Interfaces
  • Appreciate the potential benefits of multi-threading
  • Be able to implement networked client server applications using Sockets and Web based communication techniques
  • Perform File IO
Practical Work

Exercises take up around 50% of the course time. Each exercise is split up into a core section that all attendees are expected to complete, and several more challenging optional sections, some of which are for private study after the course.

The course uses Linux/Windows workstations and the Java SDK.

  • Java application devlopment using Eclipse
  • Creating Java projects in Eclipse
  • Compiling and running Java programs from Eclipse
  • Describing an object oriented application in UML
  • Specifying a GUI and realising it using AWT and Swing
  • Implementing a simple multi-threaded application
  • Implementing an instance of the Observer pattern
Course Contents The Background to Java
  • A little bit of history
  • The scope of Java
  • "Compile once - run anywhere"
  • Java security
  • Branches of the evolving Java family tree
Overview of Object Oriented Concepts and Java Programming
  • Running Java Programs and Applets
  • Program-driven vs. Event Driven applications
  • Object Oriented programming vs. procedural programming
  • Classes and objects in Java
  • Basic syntax - variables, statements, expressions
  • Flow control - conditionals and loops, exceptions (try and catch)
  • Functions and parameter passing
  • Object Composition
  • Inheritance and derived classes
  • upcasting and downcasting
  • Polymorphism and abstract classes
  • Interfaces
  • Modifiers and Access
  • Object Oriented Design with Use Cases and Scenarios
  • Overview of UML diagrams and UML notation
Overview basic Java Syntax
  • An introduction to Eclipse
  • Java code structure
  • The Anatomy of a Java Class
  • basic data types
  • variable declaration
  • reference variables
  • declaring and assigning objects
  • Basic syntax - statements, expressions
  • Flow control - conditionals and loops, exceptions (try and catch)
  • Functions and parameter passing
  • Object Composition
  • Inheritance and derived classes
  • upcasting and downcasting
  • Polymorphism and abstract classes
  • Interfaces
  • Modifiers and Access
  • Object Oriented Design with Use Cases and Scenarios
Arrays and Vectors
  • Java Arrays
  • Copying and Passing Arrays
  • Multi-dimensional arrays
  • Binary search of an ordered array
  • Bubble sort of an unordered array
  • Vectors and Enumerations
  • The observer pattern and its implementation in Java
Basic Graphics
  • Applets
  • The Abstract Windowing Toolkit (AWT) and Event Driven Programming
  • Drawing simple shapes
  • Drawing Text
  • Using Colour
Graphical User Interfaces (GUIs) and GUI Components
  • Java Foundation Classes (JFC) and Swing - an overview
  • Components, Containers, Flow Layout and Canvases
  • Button and Text fields
  • Checkbox and Choice
  • Drop Down Lists
  • Dialogs and Message Boxes
  • Border and Grid Layout
  • Gridbag Layout
Event Handling
  • Adapters and Listeners
  • Mouse Events
  • Keyboard Events
  • Window Events
  • Applets vs. Standalone applications
Exceptions
  • Exception Classes
  • Array out of bounds exceptions
  • Number format exceptions
  • Control flow during exception handling
Input Output
  • Java Streams
  • Accessing and manipulating files and directories
  • Text file IO
  • Binary IO
Introduction to Data Structures and Algorithms
  • Linked lists
  • Stacks
  • Recursion
Java Threads
  • Usefulness of multi-threading
  • Thread class
  • Synchronisation
  • Communication
  • Deadlock
  • Managing multiple threads with thread groups
Networking
  • Hypertext Transfer Protocol (HTTP) and URLs
  • URL class
  • URLConnection class
  • Connecting via a URL object
  • Connecting via a URLConnection object
  • Overview of TCP and UDP
  • Creating clients and servers using sockets
  • Creating a multi-threaded socket based server

Object Oriented Programming and Java for Beginners

£ 1,000 + VAT