C4 Model
Le C4 Model, c'est une façon de dessiner l'architecture d'un système informatique avec 4 niveaux de zoom, un peu comme Google Maps : tu commences très large, puis tu zoomes progressivement.
1. Context (le plus large)
Une seule boîte pour ton système, entourée des utilisateurs et des autres systèmes avec lesquels il parle. Ça répond à : "à quoi sert ce système et avec qui interagit-il ?"
2. Container (on zoome un peu)
On ouvre la boîte du système et on voit ses grosses briques techniques : l'appli web, la base de données, l'API, le service de paiement, etc. Un "container" ici ne veut pas dire Docker — c'est juste un élément déployable/exécutable.
3. Component (on zoome encore)
On ouvre un container et on voit les composants qui le composent en interne : par exemple dans l'API, on verra le contrôleur d'authentification, le service de facturation, etc.
4. Code (le plus zoomé)
Le niveau des classes, du code source — généralement généré automatiquement par l'IDE (diagramme UML de classes), et souvent optionnel dans la pratique.
L'idée clé : plutôt qu'un seul schéma fourre-tout illisible, tu as une série de diagrammes à différents niveaux de détail, chacun pour une audience différente — le niveau 1 pour un manager, le niveau 3 pour un dev qui doit modifier le composant.