Além dos padrões de design em nível de objeto, padrões arquiteturais definem a estrutura de alto nível das aplicações — como em camadas, hexagonal (portas e adaptadores), arquitetura limpa e orientada a eventos. Eles organizam sistemas inteiros para manutenibilidade, testabilidade e flexibilidade.
Arquitetura em camadas (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
