CATALOGUE ET TARIFS DES FORMATIONS
TARIFS 1950 H.T.

PROFILS VISÉE :
Développeurs, Chefs de projets, Architectes techniques

PRÉ-REQUIS
Connaissance d’un langage de programmation type C/C++, Pascal, Delphi

TRAVAUX PRATIQUES ET DIRIGÉ 
Ce cours comporte de nombreux TDs et TPs permettant d’illustrer et de mettre en oeuvre les différents concepts et sujets abordés.

PROGRAMME
ETAT DE L’ART DES TECHNOLOGIE OBJET

> L’évolution des langages de programmation
> Comparaison entre l’approche fonctionnelle et l’approche objet
> Etat de l’art concernant les langages et technologies objet actuelles : C++, Java, C#, PHP.

CONCEPTS JAVA AVANCÉS

> Introspection et notion de méta modèle
> Les classes Class, Method
> Réflexion : invocation dynamique de code
> Les exceptions : principes, utilisation.

INTRODUCTION A JAVA

> La machine virtuelle
> Le classpath
> Les types de base et opérateurs
> Les structures de contrôle
> Les tableaux
> Les chaînes

CONCEPTS ARCHITECTURAUX

>Programmation par contrat de service, notion d’interface
> Notions d’architecture et de composants
> Couplage des composants, organisation en couches applicatives d’un système

LES CONCEPTS OBJETS AVANCÉS

> Abstraction, objets et classes
> Généralisation et spécialisation, classification, principe d’héritage
> Comprendre le polymorphisme

LES CONCEPTS OBJECTS DE BASE 

> d’instances, d’états et de comportements
> Messages, communication et collaboration entre les objets
> Encapsulation, attributs et méthodes
> Mise en oeuvre avec Java

> Relations entre les classes, association, agrégation, composition et dépendance
> Réutilisation
> Mise en oeuvre avec Java

TARIFS 2500 H.T.

PROFILS VISÉE :

Développeurs, Chefs de projets, Architectes techniques

PRÉ-REQUIS

> Connaissance de la syntaxe du langage Java
> Connaissance du concept objet
> Une mise en œuvre du
langage sur une application basique est fortement recommandée

TRAVAUX PRATIQUES ET DIRIGÉ 

Les TPs et TDs qui seront réalisés dans cette formation permettront de très bien appréhender la multitude de concepts exposés

PROGRAMME

OPTIMISER LA JVM (Machine Virtuelle)

> Comprendre comment fonctionne le garbage collector et la gestion de la mémoire, forcer un garbage
> Optimiser l’utilisation de la mémoire, modifier les paramètres de lancement
> Comprendre le class loader
> Modifier la stratégie de chargement des classes : écriture d’un classloader
> Piloter la JVM via API

ACCÉDER À UNE BASE DE DONNÉES RELATIONNELLE AVEC JDBC

> Architecture et types de pilotes JDBC
> Charger le pilote et récupérer une connexion à la base de données
> Exécuter des requêtes SQL, requêtes paramétrées
> Exploitation des résultats
> Notion de persistance objet :
• Principes
• Data Transfer Object
• Exemple d’Hibernate

CONCEPTS ET SYNTAXES AVANCÉS DU LANGAGE

> Les « import static »
> Autoboxing et auto-unboxing des types primitifs
> Les types génériques
> Amélioration des boucles avec les collections
> Introspection et réflexion
> Méthodes à nombre d’arguments variable
> Annotations : utilisation, création

GESTION DE FLUX D’ENTRÉES/SORTIES 

> Flux binaires, encodages
> Sérialisation/désérialisation d’objets
> Les modifieurs Java et leurs impacts

LA SECURITEE EN JAVA SERVEUR JAVA EE
> Les API de sécurité (JAAS, JCE, JSSE)
> La configuration

ARCHITECTURE À OBJETS DISTRIBUÉS :RMI (Remote Method Invocation)
> Présentation
> Appel de méthodes d’un objet distant (TCP-IP)
> Appel de méthodes d’un objet distant (RMI)
> Annuaire d’objets : RMIRegistry
> Interface Remote
> Le compilateur rmic
> Stub et skeleton

GÉRER LES ACCÈS CONCURRENTS

> Définition d’un thread
> Créer et manipuler les threads
> Synchroniser les threads sur un objet moniteur
> Exemple de temps réel
> Bonnes et mauvaises pratiques

TARIFS 2800 H.T.

PROFILS VISÉE :
Développeurs, Chefs de projets, Architectes

PRÉ-REQUIS
Bonne pratique de Java

TRAVAUX PRATIQUES ET DIRIGÉ 
Les TPs et TDs qui seront réalisés dans cette formation permettront de très bien appréhender la multitude de concepts exposés

PROGRAMME

INTRODUCTION

>  Concepts de conteneur léger
> Vue d’ensemble et exemples d’utilisation
> Pattern ‘Inversion de Contrôle (IoC) par Injection de dépendance

MISE EN OEUVRE: LE CONTENEUR LÉGER DE SPRING
> Vue d’ensemble du framework
> Les Beans, BeanFactory et ApplicationContext,
> Mode singleton ou normal,
> Méthodes d’injection de dépendance,
> Configuration de beans spécifiques à Spring, cycle de vie,
> Définition de bean abstrait et héritage,
> Injections automatiques
> APIs d’accès aux ressources,
> Techniques de validations (PropertyEditors, DataBinder, BeanWrapper).

ACCÈS AU DONNÉES AVEC HIBERNATE> Gestion des ressources,
> Configuration de SessionFactory dans le contexte d’application Spring,
> IoC : HibernateTemplate et HibernateCallback,
> Implémentation DAO avec les APIs Hibernate,
> Démarcation de transactions par programmation et déclaration.

PROGRAMMATION ORIENTÉE ASPECT (AOP)
> Les concepts,
> La terminologie utilisée : Aspect, Joinpoint, Advice, Pointcut, Introduction, Target object, AOP Proxy, Weaving,
> Les différents types « advice » : Around, Before, Throws, After,
> Les objectifs et fonctionnalités AOP de Spring,
> Intégration avec le framework AspectJ.

FRAMEWORK MVC WEB SPÉCIFIQUE À SPRING

> Orientations MVC2, rappels
> Configuration du serveur
> Les contrôleurs,
> Les gestionnaires de vues,
> Les mappings
> Spring WebFlow
> Intégration avec JSF et Struts.

GESTION DES TRANSACTIONS
> La couche d’abstraction Spring,
> Les stratégies de transaction : par programmation ou par aspects
> Mise en oeuvre d’une gestion transactionnelle sans programmation et par les aspects

PATTERN DAO, ACCÈS AUX DONNÉES AVEC JDBC

> Classes abstraites pour le support DAO,
> Utilisation de JDBC via les APIs d’encapsulation Spring.

PANORAMA DES « AUTRES » COUCHES D’INTÉGRATION SPRING

Your Content Goes Here