Object Oriented Programming and Java for Beginners
Course
In Carshalton
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
Start date
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.
Reviews
Subjects
- Oriented Programming
Course programme
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 OverviewThis 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
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
- A little bit of history
- The scope of Java
- "Compile once - run anywhere"
- Java security
- Branches of the evolving Java family tree
- 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
- 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
- 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
- Applets
- The Abstract Windowing Toolkit (AWT) and Event Driven Programming
- Drawing simple shapes
- Drawing Text
- Using Colour
- 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
- Adapters and Listeners
- Mouse Events
- Keyboard Events
- Window Events
- Applets vs. Standalone applications
- Exception Classes
- Array out of bounds exceptions
- Number format exceptions
- Control flow during exception handling
- Java Streams
- Accessing and manipulating files and directories
- Text file IO
- Binary IO
- Linked lists
- Stacks
- Recursion
- Usefulness of multi-threading
- Thread class
- Synchronisation
- Communication
- Deadlock
- Managing multiple threads with thread groups
- 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