Au-delà des modèles de conception au niveau des objets, les modèles architecturaux définissent la structure de haut niveau des applications — comme par couches, hexagonal (ports et adaptateurs), architecture propre, et piloté par les événements. Ils organisent des systèmes entiers pour la maintenabilité, la testabilité et la flexibilité.
Architecture par couches (n-tier)
LAYERED → organize the app into horizontal LAYERS, each with a responsibility:
PRESENTATION (UI) → APPLICATION/business logic → DATA ACCESS → DATABASE
→ each layer depends only on the layer below; clear separation
✓ simple, common, organized ✗ can become rigid; layers can leak; less flexible
