CQRS

Problem

Writing an order requires complex validation and business rules. Reading an order dashboard needs fast, convenient query structures. Trying to use one model for both can make each unnecessarily difficult.

Solution — CQRS

Separate command and query models.
Commands → Write model
Queries  → Read model
Core idea: CQRS allows reads and writes to use different models when their needs genuinely differ.