What problem does it solve?
DDD helps you model complex business rules by organizing your code around clear consistency boundaries instead of letting CRUD-style data structures erode invariants and maintainability.
Core Features & Use Cases
- Aggregates as consistency boundaries: Enforces invariants within a single transaction and keeps cross-aggregate consistency eventual.
- Value objects and strongly-typed IDs: Prevents primitive obsession and reduces ID mix-ups via type-safe identifiers and validated records.
- Domain events and aggregate-root access: Decouples side effects from core logic and ensures external code interacts through the aggregate root.
- Anti-pattern guidance: Flags oversized aggregates, misused domain events for intra-aggregate logic, identity-bearing value objects, and anemic aggregates.
Use this when implementing DDD tactical patterns in .NET—especially around aggregates, domain events, value objects, and repository persistence—and when your architecture advisor recommends DDD with Clean Architecture.
Quick Start
Load this skill while implementing your next aggregate-based feature and ask your AI to design the aggregate root, value objects, domain events, and repository persistence approach for your bounded context.