Développement logiciel

Design Patterns : Conception avec les Design Patterns

Choisissez et appliquez les design patterns à partir de problèmes de conception observables. Vous comparez les compromis et conduisez un refactoring progressif protégé par des tests de comportement.

3 jours · 21 hIntermédiaireHybride

Pour qui ?

Développeurs et concepteurs logiciels souhaitant améliorer la conception objet et conduire des refactorings.

Prérequis

Les participants à cette formation Design Patterns doivent disposer d’une solide expérience en programmation orientée objet (Java, C++...). Une confrontation préalable à l’un de ces langages vous aura permis d’assimiler les problématiques de développement et de conception les plus courantes. Les bénéfices des design patterns en seront d’autant plus appréciés.

Des compétences à mettre en pratique

Objectifs pédagogiques

  • Connaître l’origine, la philosophie et l’utilité des Design Patterns
  • Connaître les trois grandes familles de patterns et les principaux patrons au sein de chacune de ces familles
  • Savoir identifier, pour un problème donné, le patron de conception le plus à même de solutionner le problème
  • Savoir appliquer de manière concrète le design pattern ainsi identifié

Votre progression, jour après jour

Programme détaillé

6 séquences · 21 heures indicatives · ateliers et évaluation

Télécharger le programme (PDF)

Le cas fil rouge

Refactorer un module de tarification évolutif en choisissant des design patterns seulement lorsqu'ils simplifient un problème réel.

Préparer votre formation et découvrir la méthode

Préparer la formation

Programmation objet dans un langage maîtrisé ; petit projet avec tests de comportement fournis pour le laboratoire.

Apports illustrés, exercices progressifs, ateliers sur un cas fil rouge et retour argumenté sur les productions. Les ateliers et l'évaluation font partie des heures indiquées.

Jour 01Reconnaître un problème de conception7 h · 2 séquences avec mise en pratique

Séquence 1 · 3 h 30

Reconnaître un problème de conception

  • Repérer couplage, duplication et responsabilités mêlées.
  • Distinguer patron, principe de conception et recette automatique.
  • Formuler les variations que le logiciel doit supporter.
  • Repérer couplage, responsabilités dispersées et points de variation avant de choisir un pattern.
Notions et méthodes en détail
  • Repérer duplication, couplage, changement divergent et responsabilité trop large.
  • Relier principe de substitution, inversion de dépendance et contrat testé.
  • Distinguer besoin de variation réel et complexité ajoutée par anticipation.

Atelier prévuAnalyser un module de tarification et définir trois changements futurs avant de choisir une solution.

Livrable attenduDiagnostic de conception et critères de choix.

Vérification en atelierLe diagnostic formule le problème avant de nommer un pattern.

Pour aller plus loin

Justifier l’absence de pattern quand une solution simple suffit.

Séquence 2 · 3 h 30

Séparer la création des objets

  • Comparer Factory Method, Abstract Factory et Builder.
  • Encapsuler construction complexe et dépendances variables.
  • Discuter limites des singletons et de l'état global.
  • Préserver les invariants dès la construction, injecter les dépendances et distinguer configuration d’objet et sélection de sa famille concrète.
Notions et méthodes en détail
  • Comparer Factory Method, Abstract Factory et Builder selon variantes et construction progressive.
  • Séparer décision de création et code consommateur avec une interface stable.
  • Examiner les risques d’état global et de dépendances cachées d’un Singleton.

Atelier prévuRemplacer une construction dispersée d'objets par une fabrique puis tester une nouvelle famille de tarifs.

Livrable attenduImplémentation de création et tests d’invariants.

Vérification en atelierLe client accepte une nouvelle variante sans modifier sa logique métier.

Pour aller plus loin

Faire évoluer une famille d’objets sans propager des conditions partout.

Jour 02Composer les structures7 h · 2 séquences avec mise en pratique

Séquence 3 · 3 h 30

Composer les structures

  • Utiliser Adapter pour une interface incompatible.
  • Comparer Decorator, Facade et Composite selon le besoin.
  • Éviter couches d'abstraction sans bénéfice mesurable.
  • Distinguer Adapter, Decorator, Facade et Composite selon les relations recherchées.
Notions et méthodes en détail
  • Comparer Adapter, Facade, Decorator et Composite à partir de leurs collaborations.
  • Distinguer adaptation de contrat et ajout de responsabilité autour d’un objet.
  • Évaluer profondeur d’imbrication, transparence et coût de compréhension.

Atelier prévuBrancher un fournisseur de prix externe via un adaptateur et conserver les tests du contrat interne.

Livrable attenduStructure refactorisée et diagramme de dépendances.

Vérification en atelierLe schéma montre précisément qui délègue à qui et pourquoi.

Pour aller plus loin

Ajouter une capacité sans modifier le contrat attendu par les clients.

Séquence 4 · 3 h 30

Faire varier les comportements

  • Comparer Strategy, State et Template Method.
  • Organiser notifications avec Observer et responsabilités explicites.
  • Encapsuler une action avec Command si annulation ou journalisation l'exigent.
  • Comparer Strategy, State, Observer et Command selon variabilité et temporalité.
Notions et méthodes en détail
  • Appliquer Strategy, State, Observer ou Command à un changement de comportement identifié.
  • Distinguer variation d’algorithme et transition d’état métier.
  • Prévoir ordre des notifications, erreurs et cycle de vie des abonnements.

Atelier prévuAjouter une stratégie de remise et une évolution d'état de commande sans empiler des conditions globales.

Livrable attenduComportements interchangeables et scénarios testés.

Vérification en atelierLes transitions ou notifications sont testées sans dépendance à un ordre implicite.

Pour aller plus loin

Traiter ordre des événements et effets secondaires dans un exemple concret.

Jour 03Vérifier les compromis7 h · 2 séquences avec mise en pratique

Séquence 5 · 3 h 30

Vérifier les compromis

  • Mesurer lisibilité, dépendances et coût d'extension.
  • Tester par contrats et cas de comportement.
  • Repérer surconception et abstraction prématurée.
  • Évaluer lisibilité, extensibilité, allocation et complexité induite par les patterns.
Notions et méthodes en détail
  • Comparer solution directe et solution avec pattern sur lisibilité, extension et tests.
  • Vérifier substitution et invariants des implémentations concurrentes.
  • Repérer surconception et retirer une abstraction sans utilité démontrée.

Atelier prévuRelire deux solutions au même besoin et supprimer un pattern qui complique inutilement l'exemple.

Livrable attenduMatrice de compromis et décision documentée.

Vérification en atelierL’argumentaire expose aussi le coût introduit par le pattern choisi.

Pour aller plus loin

Retirer une abstraction devenue coûteuse sans casser le comportement.

Séquence 6 · 3 h 30

Conduire un refactoring progressif

  • Protéger le comportement avant la modification.
  • Modifier une responsabilité à la fois.
  • Documenter l'intention et les alternatives rejetées.
  • S’appuyer sur tests de caractérisation, petites étapes et interfaces de transition.
Notions et méthodes en détail
  • Écrire tests de caractérisation avant de déplacer responsabilités et dépendances.
  • Procéder par petites transformations conservant les interfaces utiles.
  • Documenter décision, alternatives et point de variation effectivement obtenu.

Atelier prévuLivrer le module refactoré et démontrer l'ajout d'une règle tarifaire avec un nombre limité de modifications.

Livrable attenduPlan de refactoring et historique des vérifications.

Vérification en atelierLe comportement reste stable et la nouvelle variante se branche au point prévu.

Pour aller plus loin

Conduire une migration tout en conservant la compatibilité des appels existants.

Mettre vos acquis à l’épreuve

Évaluation finale prévue

Mise en situation individuelle et restitution commentée, incluses dans la dernière séquence. Durée indicative : 60 minutes.

Critères de réussite
  • Chaque pattern répond à une variation identifiée.
  • Les tests confirment la conservation du comportement.
  • Le participant explique le coût de sa conception et une alternative plus simple.

Adaptation et validation pédagogique. Version enrichie proposée, à valider par le formateur. Répartition pédagogique proposée sur une base de 7 heures par jour, pauses exclues. À ajuster avec le formateur au positionnement initial. Les approfondissements « Pour aller plus loin » sont sélectionnés par le formateur selon le positionnement et le temps disponible ; ils ne constituent pas des heures supplémentaires garanties.

Les ateliers décrivent les travaux prévus. Leurs fichiers, corrigés et évaluations en ligne sont à préparer, sauf ressources explicitement disponibles dans le module pilote.

Références pour approfondir

Documentation des organismes et éditeurs. La progression et les ateliers sont une rédaction originale pour Beyond Expertise.

Pour obtenir plus de détails ou le programme détaillé, contactez le centre Beyond Expertise.

Contacter le centre

Accès, accompagnement et reconnaissance

Le centre doit confirmer les prérequis, le programme final, les dates, les horaires et le tarif avant inscription. Le délai d’accès dépend des disponibilités et du besoin. L’ouverture d’une session et la disponibilité d’un cours e-learning sont confirmées avant inscription.

Les ateliers, méthodes et évaluations du programme sont proposés pour validation pédagogique. Les supports effectivement disponibles sont indiqués dans la section « Contenu e-learning ».

Le parcours ne délivre pas de diplôme ni de certification professionnelle. Aucune éligibilité CPF ou prise en charge n’est garantie. Toute préparation à un examen externe devra faire l’objet d’informations et d’habilitations vérifiées.

Contenu e-learning

Cours e-learning à préparer

Les objectifs et prérequis sont disponibles. Les leçons, supports et évaluations de ce parcours ne sont pas encore intégrés dans cet espace. Le programme détaillé ci-dessus décrit les apprentissages et les ateliers prévus.

Origine des informations et statut du programme

Durée, niveau, modalités, objectifs et tarif relevés sur le site officiel le 11 septembre 2026. Le déroulé détaillé a été enrichi par Beyond Expertise. Validation pédagogique du formateur à réaliser avant animation.

Consulter la fiche du site officiel