KEMBAR78
Domain Driven Design | PPTX
Domain Driven DesignRyan RileyCatapult Systems, Inc.
Domain Driven DesignWhen you remember that DDD is really just “OO software done right”, it becomes more obviousthat strong OO experience will also stand you in good stead when approaching DDD.- Jak Charlton, Domain Driven Design Step-by-Step
Domain Driven DesignAgendaPatterns
Entities
Value Objects
Aggregate Roots
Object Creation Patterns
Repository
Specification
Domain Services
Modules
Domain Events
State Machines
Conceptual
Ubiquitous Language
Bounded Contexts
Persistence Ignorance
Refactoring
Command Query Separation
When to use DDDDomain Driven DesignConceptual Elements(or what it means)
Domain Driven DesignDomain Driven DesignDomain First
Focus on the Object Model
Focus on Object-Oriented Design
Works well with other *DD methods to:
Reduce Complexity
Increase MaintainabilityDomain Driven DesignUbiquitous LanguageModel the language used by your domain experts
Nouns == Classes
Verbs == methods, services, etc.
Example: A Hiring Specialist may post Jobs to the Job Board.
Classes = Job, JobBoard
Actions = JobBoard.PostJob(Job)Domain Driven DesignBounded ContextsOne of many integration patterns
Continuous Integration

Domain Driven Design