Objectifs pédagogiques de la formation

Cette formation sur les Design Patterns vous apporte une réelle compétence opérationnelle sur les Design Patterns.

Selon ses inventeurs, les Design Patterns permettent de décrire un problème récurrent dans un environnement donné, puis décrivent une solution réutilisable à chaque fois qu'on le rencontre.
Les Design Patterns sont donc des modèles d'organisation correspondant à des situations fréquemment rencontrées, qu'il faudrait utiliser systématiquement pour faciliter la réutilisation, la testabilité et la maintenance du code source.

Cette formation Design Patterns vous permettra de:

  • Identifier les Design Patterns pour mieux concevoir un système Objet
  • Modéliser des composants
  • Réaliser des composants
  • Concevoir des applications évolutives et réutilisables

 

Programme de la formation

Rappel sur l'essentiel des concepts Objet
  • Classe.
  • Instance.
  • Encapsulation.
  • Polymorphisme.
  • Interface.
  • Héritage.
  • Agrégation.

Rôle et application des Design Patterns
  • Usage dans la phase analytique.
  • Usage en conception.
  • Usage en rétro-ingénierie.

Design Patterns et UML
  • Modélisation des Design Patterns.
  • Intégration des Design Patterns dans un diagramme de classes.

Organisation du catalogue
  • Classification : créationnel, structurel, comportemental.
  • Application : création, dépendance, fonctionnalité, granularité, évolution.

Les Design Patterns
  • Modèles de Création :
    - fabrique abstraite,
    - constructeur,
    - méthode de fabrique,
    - prototype,
    - singleton.
  • Modèles de structure :
    - adaptateur,
    - pont,
    - composite,
    - décorateur,
    - façade,
    - poids mouche,
    - proxy.
  • Modèles de comportement :
    - chaîne de responsabilité,
    - commande,
    - interpréteur,
    - itérateur,
    - médiateur,
    - mémento,
    - observateur,
    - état,
    - stratégie,
    - modèle de méthode,
    - visiteur.

Les Anti patterns
  • Présentation des principaux anti-patterns de code.

Ajuster les Design Patterns aux besoins applicatifs
  • Contraintes de réalisation.
  • Implémentation et ajustement selon les langages.

Créer de nouveaux Design Patterns
  • Design Patterns de ressources limitées.
  • Compteur de référence.

Du Design Pattern au Framework
  • Mise en oeuvre des Design Patterns dans les solutions applicatives.
  • TP : Mise en oeuvre des principaux patterns sur des cas pratiques.