In this section, you will learn about event sourced aggregates, their structure, other components involved in an event sourced system, and how to test aggregates.
Aggregates are the most important part of Domain-Driven Design. They are not just plain old PHP objects (POPO), but rich models that help with the...
Value Objects for Aggregates. Value Objects are highly recommended when identifying an aggregate or domain model.
Immutable blocks with no defined unique ID.
An event is something that has happened in the past. A domain event is something that has happened and affects the state of the application.
Objects responsible for recording domain events. Domain events describe what has happened, but they originate from an aggregate or domain model.
An invariant is something that holds true about your domain no matter what. Invariants ensure consistency within the domain.
Loading an aggregate back into memory involves reconstituting its previously recorded history. This concept is called Event Sourcing.
An event store is central to event sourced systems.
Last Updated on September 18, 2023 by Joshua