Identifier les principaux Design Patterns applicables aux architectures s'appuyant sur des langages objet
Choisir et utiliser un Design Pattern en fonction de chaque couche de l'architecture
Dans un contexte de refactoring d'architecture, détecter un cas d'application de design pattern pour améliorer la qualité logicielle
MISE EN PRATIQUE
Nombreux exemples de code illustrant l'implémentation concrète des principaux Design Patterns. Études de cas. Illustration du refactoring par les Patterns.
PROFIL DES PARTICIPANTS
Architecte Chef de projet technique Concepteur/développeur
PRE-REQUIS
La connaissance d'un langage objet est nécessaire, de préférence Java qui est utilisé dans les exemples d'implémentations vus en cours et les travaux dirigés Connaître UML : diagramme de classes et de séquence
La notion de tiers. Présentation du modèle en couches. Modèle Architecture J2EE.
INTRODUCTION AUX DESIGN PATTERNS
Définition & historique
Taxinomie des Design Patterns. Schéma de présentation des Patterns.
Avantages liés à l'utilisation des Design Patterns
Réutilisation et frameworks.
Comment choisir un Pattern ?
Savoir identifier les Design Patterns adaptés à chaque problématique et les mettre en oeuvre au sein d'une application J2EE. Les causes de refactoring : les pistes pour détecter les cas nécessitant une amélioration logicielle par l'implémentation de Design Patterns.
Comment utiliser un Design Pattern ?
Les stratégies pour implémenter un Pattern. Les dangers liés à l'utilisation et à la pratique des Patterns.
CLASSIFICATION DES DESIGN PATTERNS GOF PAR DOMAINE FONCTIONNEL
Présentation et répartition des Design Patterns en fonction de leur domaine d'application : Patterns de création Patterns structurels Patterns comportementaux
CLASSIFICATION DES DESIGN PATTERNS J2EE PAR COUCHE D'ARCHITECTURE
Caractéristiques des Design Patterns J2EE
Présentation et répartition des Patterns adaptés à chaque couche de l'architecture :
La couche présentation La couche service La couche intégration La couche transverse : domain model
PRESENTATION DES PRINCIPAUX PATTERNS
Abstract Factory : abstraction de la création de familles d'objets Factory Method : abstraction de la création d'objets Singleton : instance unique de classe Builder : dissociation entre la construction d'un objet complexe et sa représentation
· Delegator (Grand) : centralisation d'une fonctionnalité dans une classe Adapter : conversion de l'interface d'une classe vers celle attendue par le client Decorator : ajout d'unee fonctionnalité à un objet Proxy : frontal d'interception d'un objet pour en contrôler l'accès Façade : interface unique pour l'ensemble d'un sous-système Chain of Responsibility : délégation des requêtes à des responsables de services Command : intermédiation entre l'objet qui réalise l'action et l'objet qui l'invoque Mediator : centralisation dans un objet des relations d'un ensemble d'objets Observer : définition des relations entre un objet (Observable) et un ensemble de classes (Observer) de manière à ce que tous les "observers" soient prévenus lorsque l'état de l'observé change Template method : définition d'un squelette d'algorithme dont certaines étapes sont fournies par une classe dérivée Visitor : représentation d'une opération applicable aux éléments d'une structure objet
Autres Design Patterns (J2EE) :
La plupart des Patterns J2EE sont des associations de Patterns Gof spécialisés pour les contraintes et besoins de J2EE. Une partie de ces Patterns est obsolète car dépassée par les évolutions de J2EE 1.4, c'est le cas des Patterns centrés sur les EJB. Un tour d'horizon de ces Patterns permet de mieux maîtriser les couches J2EE et les implémentations présentes, ainsi que d'optimiser son utilisation de J2EE: Front controller View helper Composite View Business Delegate Service Locator Session Facade Data Access Object Data Transfer Object...
SYNTHÈSE
Que peut-on attendre des Design Patterns pour le développement en architecture J2EE ? Principaux ouvrages et sites de référence. Glossaire des Design Patterns Gof et J2EE.
PARIS
7-8 fév
10-11 avril
19-20 juin
21-22 août
16-17 oct
4-5 déc
BORDEAUX
13-14 fév
7-8 avril
12-13 juin
4-5 août
15-16 oct
8-9 déc
LYON
21-22 janv
17-18 mars
28-27 mai
30-31 oct
MEDITERRANEE
21-22 janv
17-18 mars
28-27 mai
30-31 oct
NANTES
10-11 avril
19-20 juin
16-17 oct
4-5 déc
TOULOUSE
13-14 fév
29-30 avril
10-11 juil
9-10 oct
18-19 déc
SUISSE
17-18 janv
10-11 mars
13-14 mai
8-9 sept
17-18 nov