CQRS und Read Models
Idee
Das Schreibmodell schuetzt Invarianten. Das Lesemodell beantwortet Abfragen schnell und bequem. Dadurch muss das Aggregate nicht fuer Reporting, Suchlisten oder Dashboard-Zwecke verbogen werden.
Im Projekt
OrderQueryService ist bewusst von PlaceOrderUseCase getrennt. In einem echten Projekt koennte der Query-Service auf eine Projection-Tabelle, Elasticsearch, OpenSearch oder eine Materialized View zugreifen.
Merksatz
CQRS ist nicht automatisch Event Sourcing. CQRS bedeutet zuerst nur: Schreiben und Lesen werden getrennt modelliert.