階層化アーキテクチャ
人間はアホなので階層にして整理しないとソフトウェアを理解できない……Summer498.icon
https://gyazo.com/db0bc8a7e283ae47469ce3f3632ba857
User Interface: 具体的にレンダリングする
Presentation: 見た目を管理する
Views, View Models, Input Controllers
ここから下はアプリサーバー
Application:
App. Controllers, App Services, Event Listeners
クライアントから叩かれるAPIはここ
Domain Model:
Entitiesm Collections, Value Objects,
Domain Services Domain Events
Persistence:
Repositories, Query Objects,
ORM (Object Relational Mapping) / (Object Role Modeling) Data:
Database server, Search Server
3rd party/API
Infrastructure
Framework, Logging