intermediate
Layered architecture
Разделяйте presentation, application, domain и infrastructure responsibilities, сохраняя explicit dependency direction и transaction boundaries.
Слоистая архитектура организует presentation, application, domain и infrastructure с явным направлением зависимостей. Прагматичный default для enterprise, когда нужна знакомая структура и transaction boundaries совпадают с use cases. Слои логические; deploy может оставаться монолитным.
На интервью: feature через слои на доске. Где DTO mapping и почему domain не зовёт вверх.
Типовые ошибки: жёсткие слои запрещают уместный cross-cutting; presentation logic в application services; схема БД диктует domain.
Компромисс — гибкость против сложности: знайте, когда достаточно более простого пути.
Чеклист:
- Ответственности каждого слоя документированы.
- Зависимости внутрь, к domain.
- Cross-layer types маппятся на границах.
- Integration tests на реалистичное взаимодействие слоёв.