Aller au contenu

Concevoir son code

Principes de conception, design patterns et architecture applicative — les fondations avant d'écrire la première ligne.


graph LR
    A["SOLID"] --> B["Patterns"]
    B --> C["Architecture"]
    C --> D["API Design"]
    D --> E["Modelisation"]
    E --> F["Bonnes pratiques"]
    F --> G["Cas avances"]

Ce que vous allez apprendre

À la fin de ce tutoriel, vous serez capable de :

  • Appliquer les 5 principes SOLID avec des exemples concrets
  • Reconnaitre et implémenter les design patterns essentiels
  • Choisir une architecture applicative adaptée a votre contexte
  • Concevoir des API internes coherentes et evolutives
  • Modéliser un système avec UML et C4
  • Appliquer les principes DRY, KISS, YAGNI de façon pragmatique
  • Aborder DDD, CQRS et event sourcing sur des projets complexes

Prérequis

Prérequis Détail
Un langage maîtrise Python, Java, Go ou TypeScript (les exemples couvrent plusieurs langages)
Notions de tests Savoir écrire un test basique (voir Tester)

Parcours

Section Contenu
Principes SOLID SRP, OCP, LSP, ISP, DIP - avec exemples multi-langages
Design Patterns Creational, Structural, Behavioral - les essentiels
Architecture applicative Clean, Hexagonale, Onion, Ports & Adapters
API Design Contrats, versionning, error handling, backward compat
Modelisation UML, C4, diagrammes de sequence - diagrammes as code
Bonnes pratiques DRY, KISS, YAGNI, composition vs héritage, couplage
Cas avances DDD, CQRS, event sourcing, refactoring legacy