domain-driven-design
Installation
SKILL.md
Domain-Driven Design — DDD Pattern Reference
Supporting skill providing DDD tactical and strategic pattern guidance for the microservice-designer harness.
Tactical Patterns Reference
Entity
An object defined by its identity that persists over time.
- Characteristics: Has unique identifier; mutable state; equality by ID not value
- Examples:
Order,Customer,Product,Invoice - Implementation: Generate stable ID at creation (UUID); never expose internal state directly; protect invariants via methods
Value Object
An object defined by its attributes with no conceptual identity.
- Characteristics: Immutable; equality by value; side-effect-free; replaceable
- Examples:
Money(amount, currency),Address,EmailAddress,DateRange - Implementation: Validate all fields in constructor; return new instance on transformation; share freely (no identity)