JBI training

www.jbinternational.co.uk

sales@jbinternational.co.uk

Call Free 0800 028 6400

JB International
1345 High Road
London, N20 9HR

+44 (0) 20 8446 7555

 

Java - Advanced Programming Techniques Workshop

Dates and full course list


Java - Advanced Programming Techniques Workshop Course Overview

Course Code: JAV0020
Price: £1850
Duration: 4 days
Date:
Who should attend: IT professionals who already have some Java experience and are looking to further their skills or resolve any issues they may have with the more complex areas of its use.
Prerequisite Skills:

Java knowledge (to the level of our JavaSE course or similar).


Java is now a mature language. With the advent of Java 5 and now Java 6, the language has seen profound improvements of which not all developers are aware. This course highlights those improvements, as well as delving into a range of topics that an experienced Java developer needs, such as design patterns, logging and testing frameworks, performance and concurrency issues: skills that underpin best Java development project practice worldwide.

This course has very much a workshop feel by design, as experienced Java developers will typically come to this course with individual issues and requirements, and our expert instructors can usually adapt the course content on the fly and have the flexibility to concentrate on topics as required (within reason!).

Course Content

All exercises and examples are designed to achieve the maximum benefit for delegates. They aim to effectively demonstrate the advanced concepts covered in the course and provide an opportunity to experiment with them; many of the exercises develop custom API’s which encapsulate complex functionality that can be used in numerous real world applications.

This course has been developed for real-world, commercial scenarios by our expert instructors. See below for detailed syllabus. If you have a technical question, please email

Course Objectives

1. Advanced language concepts, including generics, enumerations and other Java 5 additions to the Java language.
2. A solid grounding in use of Java for distributed programming, including web techniques.
3. Best practices, including use of open source frameworks and techniques that are now mainstream project standards.
4. How to use design patterns effectively and apply them in practical contexts.


Java Advanced Training Course Outline

Improvements to the Java Language

Exploiting type-safe Collection classes with generics
Writing your own generified, flexible classes
How to minimize casting with autoboxing
Annotations for improving compiler effectiveness
Providing your own annotations
Effective string processing with regular expressions
Flexible parameter lists with varargs
Farewell to lists of constants: enumerations

Maintainability & Extensibility with Design Patterns

Beyond simple OO
Why new is not always best: creational patterns
One and only one instance with Singleton
Controlling what you create with Factory Method
Improved object relationships: structural patterns
Bridging divides with Adapter
When inheritance is not enough: Decorator
Object oriented algorithms: behavioural patterns
Divide and rule with Command
Event-driven processing: Observer
Applying State and Strategy
Enforcing lifecycles with Template Method

Logging Best Practice

System.out.println considered harmful
Controlling message destinations
Filtering messages by severity
Choices of logging framework: Java native logging versus log4j
Avoiding commitment: Apache
Commons Logging
Creative applications for logging

Optimizing the Java Development Lifecycle

Beyond simple build management with ANT
Incorporating and automating project-wide testing
Enforcing code quality standards
Gathering metrics
Spotting anti-patterns
Further automation with Maven
Controlling dependencies
Maven and IDE integration
Configuration management with SubVersion

New features of Java

JUnit: testing framework and philosophy
Testing best practice
Improved test management with annotations
Container-based testing for enterprise Java components

Approaches for Distributed Applications

Java's raw networking capabilities
Simplifying access to networked resources:
URL and URLConnection
Improved remote method invocation (RMI) and macro frameworks - Web client/server architectures
Apache HttpClient
Web containers: Apache Tomcat

Designing Secure Applications

Locking down the JVM with policy-based security
Implications of security for writing Java code
Authentication and authorisation in enterprise Java environments
High Performance Java
Tools for profiling your Java code
Analysing response times and bottlenecks
Automating load and stress testing
High-performance IO for files and networks: java.nio.
Common performance-related coding issues
Configuring the JVM for best performance
Managing and monitoring Java applications with JMX
Concurrency Utilities
Thread-safe building blocks: the java.util.concurrent* packages
Scheduling and synchronizing tasks
Implementing highly scalable concurrent algorithms

Associated Courses

JavaFX Script Training Course
JavaFX Mobile Training Course
JavaSE (J2SE) Training Course
Advanced Java SE Training – Advanced Programming Techniques & Design Patterns Workshop
JavaEE (J2EE) Training Course
JavaME (J2ME) Training Course
JavaME (J2ME) Upgrade for Java Programmers
JavaEE (J2EE) Design Patterns & Architecture
JavaEE (J2EE) Architecture - 1 day overview
Enterprise Workshop with Struts Training Course
Web Enterprise Development Workshop with Spring Framework Training
JBoss J2EE Application Server Administration Training
Hibernate training course
SOA & ESB - Service Oriented Architecture & Enterprise Service Bus Training
IBM Visual Age for Java Training Course
Websphere Application Server Training Course
Weblogic / J2EE Training Course
Weblogic Upgrade Training Course

UK training course Listing

.net 2.0 training course uk | ASP.NET 2.0 training course uk | SOA & ESB training course uk - Service Oriented Architecture Training Course | SOA for architects and managers training course | SOA for developers and designers training course | Spring training course uk | Hibernate training course uk | .net security training course uk | AJAX training course uk | ASP.NET AJAX training course uk (ATLAS training course uk) | .NET 2.0 Compact Framework training course uk | .NET training course uk | ASP.NET training course uk | advanced ASP.NET training course uk | .NET programming with C# training course uk | .NET programming with VB.NET training course uk | .NET Technologies and architecture Overview Seminar | .NET Web Services training course uk | SharePoint 2007 Training Course | BizTalk Server 2004 Training Course | BizTalk Server 2006 Training Course | Internet Technologies Overview Seminar | Java training course uk | J2EE training course uk | Java Advanced Programming Techniques Workshop | Java for C++ Programmers training course uk | Java Web Applications (JSP) training course uk | Java 2 Micro Edition (JavaME / J2ME) training course uk | Java Web Services training course uk | Java with WebSphere - WSAD training course uk | J2EE with WebSphere - WSAD training course uk | Weblogic / J2EE for Java training course uk | XML training course uk | XSLT training course uk | OO Analysis & Design with UML training course uk | SQL Server 2000 Applications Development training course uk | SQL Server 2000 DBA (Database Administration) training course uk | SQL Server Performance tuning training course uk | SQL Server 2005 programming training course | SQL Server 2005 DBA Administration Training Course | SQL Server 2005 Upgrade Training Course |javascript training course uk | dynamic html (DHTML) & javascript training course uk | oracle 9i intro to SQL training course uk | Oracle 9i DBA training course uk | Oracle Forms training course uk | Oracle Reports training course uk | asp training course uk | asp visual interdev training course uk | html training course uk | web design training course uk | unix basics training course uk | unix fundamentals training course uk | unix systems administration training course uk

Java - Advanced Programming Techniques Workshop

::