I'm studying Domain driven design (DDD), reading many articles, but never found a simple explanation. Please, help, let's say we have a design:
My bunch of question is:
- What is domain? ( where is domain depicted) on this pic?
- Where is aggregate on the pic? ( is it many objects or only one?)
- Is it right that Order is the aggregate root?
- Why LineItem is not an entity? (i'm asking, because here: https://softwareengineering.stackexchange.com/questions/351853/should-internal-entities-in-an-aggregate-respond-to-domain-events-directly) guys directly say that OrderLine is an entity
- Can DDD schema exists without CQRS? Should CQRS be applied to every part (domain? aggregate?) of the architecture
- Is Event Driven == Event sourcing?
- Is compensation required in DDD Event Driven/sourcing instead of distributed transactions, or can it be somehow exists without compensation (and without distributed transactions)?
I really googled and read articles, and these questions are raised in my head...