DDD
DDD
ELI5 — The Vibe Check
DDD is the abbreviation for Domain-Driven Design — the practice of making your code speak fluent Business. Your classes and functions should sound like what the business actually does, not like a computer science textbook.
Real Talk
Domain-Driven Design — see Domain-Driven Design entry. The abbreviation DDD is universally used in architectural discussions. Core tactical patterns include Entities (identity-based), Value Objects (equality-based), Aggregates (consistency boundaries), Repositories, and Domain Services.
When You'll Hear This
"Are you using DDD for this project?" / "DDD is overkill for a simple CRUD app."
Related Terms
Clean Architecture
Clean Architecture is like an onion with strict rules: the inner layers (your core business logic) have absolutely no idea the outer layers (databases, API...
CQRS
CQRS says: the way you write data and the way you read data should be separate systems. Writing (commands) goes to one model optimized for transactions.
Domain-Driven Design (DDD)
DDD says your code should speak the same language as the business.
Event Sourcing
Instead of storing 'balance: $100', event sourcing stores 'deposited $200, withdrew $50, withdrew $50'.