Слои (изнутри наружу)
- Entities — бизнес-правила предприятия. Ни от чего не зависят
- Use Cases — бизнес-правила приложения. Зависят только от Entities
- Interface Adapters — Controllers, Presenters, Gateways. Преобразуют формат между Use Cases и внешним миром
- Frameworks & Drivers — DB, Web, UI. Самый внешний слой
Правило зависимостей
Код во внутреннем слое никогда не упоминает что-либо из внешнего. Зависимость инжектируется через интерфейс.
Родственные концепции
Hexagonal Architecture (Ports & Adapters), Onion Architecture — разные названия для схожей идеи: защитить доменную логику от инфраструктуры.