Java and XML

Goals


- Master XML

- Be able to foresee its cases and its use patterns

- Know how to choose and use an adequate java implementation

- Be able to carry out complex transformations of documents

Program

Java: reminder of
XML history and domains databases
For what? For who ?

Simple syntax
– Document
– Tags
– Attributes
Special syntax
– Inheritances
– Namespaces
Presentation of DTDs (Document Type Definition)
Real-life examples

Open and read any document with SAX
Observation of errors in the document
Modification of a document
Declaration of a DTD: validate a document

Reading and Exploring a Document
Create, Modify, and Save

Transforming a document with XSLT
XSLT: stylesheets
XSLT: models
XSLT: patterns
XPath: data types, axes and functions

Duration

3 days

Price

£ 1275

Audience

All

Prerequisites

Have followed the « Java initiation » course or have equivalent knowledge

Reference

JAV27-F

Sessions

Contact us for more informations about session date

Java SE Intermediate : Design patterns

Goals


- Learn to implement design patterns

Program

History and reference works
Fields of application
How to apply Design Patterns

Factory and Abstract Factory for creation under
Singleton and derivative conditions : control of available resources

The Composite, how to simplify the
Proxy and Adapter lists , the interfaces for accessing the methods
The Facade: clarifying a component

Strategy: the method factory
The iterator and its existing implementations
Observe: events without events
Chain of responsibility and responsibility trees
Visitor and access: mastery of collaboration
Overview of other Design Patterns

Duration

2 days

Price

£ 1530

Audience

Java Developers

Prerequisites

Have taken the Java Initiation + Deepening course or equivalent concepts

Reference

JAV100953-F

Sessions

Contact us for more informations about session date

Java SE Intermediate : Advanced Object Design

Goals


- Master the fundamentals of OOP

- Understand the decomposition of a business application into objects (OO design / design)

- Apply the principles of grouping, structuring and communication between the objects of a complex system

- Design OO systems in order to promote maintainability and facilitate change in an iterative context

- Apply SOLID principles

- Understand certain business design models (Repository, Factory, DTO)

- Know the place and differences between architectural styles

- Know some models architectural (DDD, Clean Architecture …)

- Design weakly coupled and cohesive applications.

Program

Encapsulation: interest, good practices
Aggregation of objects
Inheritance: use case, preference for composition
Polymorphism: ad-hoc, subtyping, parametric types
Value Objects
Virtuous circle of ignorance

Workshop: building a coherent class scheme

Tell don’t ask
Dependency management
Breakdown of business rules based on interaction
Behavior-based design
Demeter’s Law

Workshop: implementation of behavior patterns

Design by concepts rather than by data: concepts, object types
Hexagonal Architecture
Presentation of SOLID
principles Unique responsibility
principle (SRP) Open-close principle (OCP)

Workshop: multiple examples of bad / good implementation

Abstraction-Instability metric (RC Martin)
Liskov substitution principle (LSP)
Composition versus inheritance
Principle of interface segregation (ISP)

Workshop: analysis of a code and presentation of metrics – rewriting of concrete examples

Modular
design Business domain design (DDD overview)
Infrastructure separation (persistence, UI, ORM, etc.)
Dependency inversion principle (DIP)
Repositories (Repositories)
Transport object (DTO)
Presentation of clean architecture

Workshop: implementing a layered applicaion

Duration

3 days

Price

£ 1530

Audience

Java Developers

Prerequisites

Have taken the Java Initiation + Deepening course or equivalent concepts

Reference

JAV100952-F

Sessions

Contact us for more informations about session date

Java SE Intermediate : Advanced object design + Design patterns

Goals


- Master the fundamentals of OOP

- Understand the decomposition of a business application into objects (OO design / design)

- Apply the principles of grouping, structuring and communication between the objects of a complex system

- Design OO systems in order to promote maintainability and facilitate change in an iterative context

- Apply SOLID principles

- Understand certain business design models (Repository, Factory, DTO)

- Know the place and differences between architectural styles

- Know some models architectural (DDD, Clean Architecture …)

- Design weakly coupled and cohesive applications

- Learn to implement design patterns

Program

Encapsulation: interest, good practices
Aggregation of objects
Inheritance: use case, preference for composition
Polymorphism: ad-hoc, subtyping, parametric types
Value Objects
Virtuous circle of ignorance

Workshop: building a coherent class scheme

Tell don’t ask
Dependency management
Breakdown of business rules based on interaction
Behavior-based design
Demeter’s Law

Workshop: implementation of behavior patterns

Design by concepts rather than by data: concepts, object types
Hexagonal Architecture
Presentation of SOLID
principles Unique responsibility
principle (SRP) Open-close principle (OCP)

Workshop: multiple examples of bad / good implementation

Abstraction-Instability metric (RC Martin)
Liskov substitution principle (LSP)
Composition versus inheritance
Principle of interface segregation (ISP)

Workshop: analysis of a code and presentation of metrics – rewriting of concrete examples

Modular
design Business domain design (DDD overview)
Infrastructure separation (persistence, UI, ORM, etc.)
Dependency inversion principle (DIP)
Repositories (Repositories)
Transport object (DTO)
Presentation of clean architecture

Workshop: implementing a layered applicaion

History and reference works
Fields of application
How to apply Design Patterns

Factory and Abstract Factory for creation under
Singleton and derivative conditions : control of available resources

The Composite, how to simplify the
Proxy and Adapter lists , the interfaces for accessing the methods
The Facade: clarifying a component

Strategy: the method factory
The iterator and its existing implementations
Observe: events without events
Chain of responsibility and responsibility trees
Visitor and access: mastery of collaboration
Overview of other Design Patterns

Duration

5 days

Price

£ 2045

Audience

Java Developers

Prerequisites

Have taken the Java Initiation + Deepening course or equivalent concepts

Reference

JAV100931-F

Sessions

Contact us for more informations about session date

Java SE Advanced

Goals


- Know and master the advanced concepts of Java programming

- Build and deploy complete, high-performance and maintainable applications

Program

Presentation of Swing: containers, widgets
Modal / non-modal windows, message boxes
Positioning of controls (Layout Managers)
Event management: keyboards,
WYSIWYG mice available
Resizing management

Workshop: Complete management application

Presentation of the JDBC API
Writing queries and processing results
Transaction management
Object relational mapping (Pattern DAO)
Presentation of ORM frameworks

Workshop: Organization and implementation of a data access layer

Network communications
Process management
JVM options
Code optimization, genericity
Introspection (Reflection API)

Workshop: code optimization and deployments

Passing of the certification (if foreseen in the financing).

Duration

2 days

Price

£ 1165

Audience

All

Prerequisites

Have followed the « Java initiation » course or have equivalent knowledge

Reference

JAV26-F

Sessions

Contact us for more informations about session date

Java SE Initiation

Goals


- To be able to realize applications in Java

- To know how to choose the adapted technologies and to set up efficient interfaces

Program

History, versions
Java editions: Java SE, Java EE, Java ME
Compilation and interpretation by the JVM (Java Virtual Machine)
Java technologies / frameworks and positioning
Development environment
Packaging and deployment of a Java application

Workshop: Installation of the JDK (Java Development Kit) and an IDE (Eclipse / NetBeans) – Structure of a project, buildPath, …

Use of variables, constants, operators
Simple types and reference types
Casting, Wrappers
Expression of conditions: if / else, switch, ternary operator
Use of loops: for, while, do while
Manipulation of arrays
Factorization of codes with methods
Overload, variable arguments, recursion
Comment and document code

Workshop: Multiple examples of manipulation of control structures and functions

Definition of classes, POJO vs JavaBean
Declaration of instance / class members (static)
Constructors and instantiation
Lifecycle of an object in memory
Class diagram (UML)
Aggregation of objects (association)
Encapsulation: getters and setters
Extension of classes (Inheritance)
Object comparison
Abstract classes
Interfaces and implementation
Polymorphism

Workshop: Modeling of problems into objects

Definition, types of exceptions
Catch and process an exception (try / catch / finally)
Throw / Raise an exception (throw / throws)
Create exceptions

Workshop: Managing exceptions that may be triggered in an application

Presentation of the available API,
Comparative generics , choice of a type of collection
Essential classes: ArrayList, HashMap, … Browsing
, operations on collections and sorting

Workshop: Handling of collections of objects

Binary / character
streams Reading and writing of files
Using buffers
Manipulating paths, directories, monitoring
Serialization of objects: binary, XML
Externalization of configuration in .properties
Log management: java.util.logging, Log4j

Workshop: Implementation of exports and imports from files

Passing of the certification (if foreseen in the financing).

Duration

3 days

Price

£ 1755

Audience

All

Prerequisites

Programming concepts

Reference

JAV25-F

Sessions

Contact us for more informations about session date

Java SE Initiation + Advanced

Goals


- Realize and deploy complete, powerful and maintainable applications in Java

- Knowing how to choose the appropriate technologies and setting up effective interfaces

- Knowing and mastering the advanced concepts of Java programming

Program

History, versions
Java editions: Java SE, Java EE, Java ME
Compilation and interpretation by the JVM (Java Virtual Machine)
Java technologies / frameworks and positioning
Development environment
Packaging and deployment of a Java application

Workshop: Installation of the JDK (Java Development Kit) and an IDE (Eclipse / NetBeans) – Structure of a project, buildPath, …

Use of variables, constants, operators
Simple types and reference types
Casting, Wrappers
Expression of conditions: if / else, switch, ternary operator
Use of loops: for, while, do while
Manipulation of arrays
Factorization of codes with methods
Overload, variable arguments, recursion
Comment and document code

Workshop: Multiple examples of manipulation of control structures and functions

Definition of classes, POJO vs JavaBean
Declaration of instance / class members (static)
Constructors and instantiation
Lifecycle of an object in memory
Class diagram (UML)
Aggregation of objects (association)
Encapsulation: getters and setters
Extension of classes (Inheritance)
Object comparison
Abstract classes
Interfaces and implementation
Polymorphism

Workshop: Modeling of problems into objects

Definition, types of exceptions
Catch and process an exception (try / catch / finally)
Throw / Raise an exception (throw / throws)
Create exceptions

Workshop: Managing exceptions that may be triggered in an application

Presentation of the available API,
Comparative generics , choice of a type of collection
Essential classes: ArrayList, HashMap, … Browsing
, operations on collections and sorting

Workshop: Handling of collections of objects

Binary / character
streams Reading and writing of files
Using buffers
Manipulating paths, directories, monitoring
Serialization of objects: binary, XML
Externalization of configuration in .properties
Log management: java.util.logging, Log4j

Workshop: Implementation of exports and imports from files

Presentation of Swing: containers, widgets
Modal / non-modal windows, message boxes
Positioning of controls (Layout Managers)
Event management: keyboards,
WYSIWYG mice available
Resizing management

Workshop: Complete management application

Presentation of the JDBC API
Writing queries and processing results
Transaction management
Object relational mapping (Pattern DAO)
Presentation of ORM frameworks

Workshop: Organization and implementation of a data access layer

Network communications
Process management
JVM options
Code optimization, genericity
Introspection (Reflection API) 

Workshop: code optimization and deployments

Passing of the certification (if foreseen in the financing).

Duration

5 days

Price

£ 2785

Audience

All

Prerequisites

Programming concepts

Reference

JAV28-F

Sessions

Contact us for more informations about session date

Java SE / Java EE certifications

CMS – Portals

Java SE / Java EE, Reporting

Other Java

Java EE Administration

Java EE, Rich client applications

Java SE / Java EE, Build tools

Java EE, web services

Java EE, data persistence

Java EE, MVC web frameworks

Java EE, Spring Frameworks

Java EE, web components

The Java EE Platform (Java Enterprise Edition) provides a robust solution for the development of distributed applications (http://www.oracle.com/technetwork/java/javaee/tech/index.html).

Based on the Java language, the Java EE platform provides a set of specifications for the development of standard components to build robust and secure web applications.

Building a Java EE application is supported primarily on two components that are Servlets and JSPs; built to complement each other, his last used to intercept an HTTP request and generate a web response that will be sent to the customer.
They offer advanced management contexts: page, request, session cookies, etc. and are independent of the web container on which they are running. All JEE application server is capable of hosting this type of component.

MVC frameworks can come from the nest over for architecting large applications.

Basic components (Servlet / JSP), use of advanced components (EJB, WebServices), recognized MVC frameworks (Struts, JSF, Spring MVC) and administration of Java EE application servers will no longer have secrets for you after enjoying the expertise of our trainers.

Java Advanced

Java technology defines both an object oriented programming language and a computing platform. Created by the company Sun Microsystems (often just called « Sun ») in 1995, and since taken over by the company Oracle in 2009, Java technology is inseparable from the field of computing and the Web. It is therefore found on computers, but also on mobile phones, game consoles, etc. The advent of the smartphone and the growing power of computers have led to a renewed interest in this programming language.

Java

The world’s most widely used language for developing business and mobile applications, Java is an advanced, object-oriented programming language. Its portability allows it to support disparate platforms (PCs, video players, smart cards, mobiles / tablets, etc.).

Created by James Gosling and Patrick Naughton (1995 – Sun Microsystems), it is today managed by Oracle Corporation (http://www.oracle.com/technetwork/java/index.html) and offers open source development platforms (GNU / GPL license) very rich: Java SE, Java EE, Java ME

We offer a wide range of training courses to help you improve your skills.

The training: Java Initiation + Deepening represents the starting point of your learning. It is aimed at developers who already have basic algorithms and knowledge of a programming language.

Focused on pedagogy and practical workshops, this training will
will allow you to quickly learn the syntax, the fundamental concepts of object-oriented programming and the different API’s:

  • Handling of flows / files,
  • Use of collections,
  • Access to databases using JDBC,
  • Sending emails,
  • Use of external libraries,
  • Creation of graphical interfaces (Swing),
  • Sending emails,
  • Packaging and deployment of a Java application