Formation en Développement: Clean Architecture — Concevoir des applications durables et testables - Ascent Formation
Back to trainings
Développement

Clean Architecture — Concevoir des applications durables et testables

3 jours21 heures

Description

Objectif de formation : Permettre aux développeurs expérimentés de maîtriser les principes et patterns de la Clean Architecture — SOLID, séparation des couches, inversion des dépendances, ports et adaptateurs, use cases — afin de concevoir des applications indépendantes des frameworks, testables, maintenables et évolutives, quelle que soit la technologie utilisée. Un projet applicatif fil rouge agnostique (système de gestion de commandes) est développé et refactorisé progressivement tout au long de la formation — de l'analyse des problèmes d'une architecture monolithique couplée jusqu'à une implémentation complète en Clean Architecture avec tests — dans le langage de prédilection des participants.

Learning Objectives

  • Comprendre les problèmes structurels des architectures traditionnelles (N-tiers, MVC couplé)
  • Maîtriser les 5 principes SOLID et les appliquer concrètement dans du code réel
  • Comprendre les 4 couches de la Clean Architecture et la règle de dépendance
  • Implémenter des Entities, Use Cases, Ports et Adapters correctement
  • Appliquer l'architecture hexagonale (Ports & Adapters) comme mise en œuvre concrète
  • Écrire des tests unitaires isolés des dépendances externes grâce à l'inversion de dépendances
  • Refactoriser un code existant couplé vers une Clean Architecture progressive
  • Positionner CQRS et DDD comme extensions naturelles de la Clean Architecture

Target Audience

Développeurs expérimentés souhaitant structurer leurs applications de manière durable et maintenable
Tech leads et architectes logiciels souhaitant définir des standards d'architecture pour leur équipe
Développeurs confrontés à de la dette technique et souhaitant refactoriser progressivement
Toute personne engagée dans une démarche Software Craftsmanship

Prerequisites

Expérience significative en développement orienté objet (minimum 2 ans)
Maîtrise d'au moins un langage orienté objet : Java, C#, TypeScript, Python, PHP ou équivalent
Notions de base sur les tests unitaires souhaitées

Program Outline

Informations

Duration

3 jours

21 heures

Tarif

Sur demande