Ce cours vise à fournir aux participants une compréhension approfondie des concepts de design patterns et d'architectures applicatives dans le développement de logiciels. Les design patterns sont des solutions éprouvées aux problèmes récurrents rencontrés lors de la conception de logiciels, tandis que les architectures applicatives définissent la structure générale d'une application et la manière dont ses composants interagissent entre eux. En combinant ces deux aspects, les participants seront en mesure de concevoir des logiciels robustes, évolutifs et maintenables.

OBJECTIFS PEDAGOGIQUES

  • • Expliquer les bonnes pratiques de conception
  • • Comprendre et mettre en œuvre les différents motifs de conception
  • • Comprendre, concevoir et intégrer des architectures applicatives

PROGRAMME

INTRODUCTION AUX DESIGN PATTERNS

  • - Introduction aux design patterns : définitions, avantages et types.
  • - Les trois catégories de design patterns : Création, Structure, Comportement.
  • - Implémentation des design patterns en langage de programmation en Java.
Description des travaux pratiques :
  • Exercices pratiques sur les design patterns de création : Singleton, Factory, Abstract Factory, Builder.
  • Implémentation et utilisation de ces patterns dans des petits projets.

DESIGN PATTERNS STRUCTURELS

  • - Présentation des design patterns structurels : Adapter, Decorator, Facade, Proxy, etc.
  • - Cas d'utilisation et exemples concrets de chaque design pattern structurel.
  • - Stratégies pour choisir le bon design pattern en fonction des besoins du projet.
Description des travaux pratiques :
  • Exercices de mise en pratique des design patterns structurels dans des situations de programmation réelle.
  • Implémentation de ces patterns dans des projets existants ou de nouveaux projets.

DESIGN PATTERNS COMPORTEMENTAUX

  • - Exploration des design patterns comportementaux : Observer, Strategy, State, Command, etc.
  • - Approfondissement des concepts à travers des études de cas et des exemples concrets.
  • - Conseils pour intégrer les design patterns comportementaux dans une architecture logicielle.
Description des travaux pratiques :
  • Exercices pratiques sur les design patterns comportementaux.
  • Application des design patterns comportementaux dans des scénarios de programmation réelle.

ARCHITECTURES APPLICATIVES

  • - Introduction aux architectures applicatives : MVC, MVP, MVVM, Clean Architecture, etc.
  • - Comparaison des différentes architectures applicatives en termes de maintenabilité, extensibilité et testabilité.
  • - Bonnes pratiques et conseils pour concevoir et mettre en œuvre une architecture applicative efficace.
Description des travaux pratiques :
  • Conception et mise en œuvre d'une architecture applicative pour un projet spécifique.
  • Étude de cas et analyse des architectures applicatives dans des projets existants.

PUBLIC

• Développeur web • Développeur web mobile • Architectes • Concepteur développeur d’applications • Chef de projet technique

PRÉREQUIS

  • Avoir acquis les connaissances du langage orientée objet (Java, c#/.NET, …)
  • INFORMATIONS PRATIQUES

    HORAIRES DE LA FORMATION
    de 9 h 00 à 12 h 30 et de 13 h 30 à 17 h 00

    MÉTHODOLOGIE PÉDAGOGIQUE
    Théorie | Cas pratiques | Synthèse

    MODALITÉS D'ÉVALUATION
    Évaluation qualitative des acquis tout au long de la formation et appréciation des résultats