DomainDrivenDesign 02
DomainDrivenDesign 02
Module Overview
Entities
Value Objects
Aggregates
Domain Services
Factories
1
D o m a i n D r i v e n D e s i g n
Introduction
Eric Evans
DDD Author
“DDD can be divided into Strategic and Tactical Design where the Tactical Design is about the building blocks
of DDD.”
2
D o m a i n D r i v e n D e s i g n
Entities
Eric Evans
DDD Author
“Many objects are not fundamentally defined by their attributes, but rather by a
thread of continuity and identity.”
“An object primarily defined by its identity is called an Entity.”
3
D o m a i n D r i v e n D e s i g n
Va l u e O b j e c t s
Eric Evans
DDD Author
4
D o m a i n D r i v e n D e s i g n
E n t i t i e s v s Va l u e O b j e c t s
5
D o m a i n D r i v e n D e s i g n
Aggregates
Martin Fowler
Refactoring Author
6
D o m a i n D r i v e n D e s i g n
Aggregates
7
D o m a i n D r i v e n D e s i g n
Domain Services
Eric Evans
DDD Author
“The Domain Services are Stateless; they reflect behavior and do not have an
identity. The Domain Services contain domain logic that does not belong to an
Entity or Value Object.”
8
D o m a i n D r i v e n D e s i g n
Domain Services
9
D o m a i n D r i v e n D e s i g n
Factories
Martin Fowler
Refactoring Author
10
D o m a i n D r i v e n D e s i g n
Factories
11
Who else needs
some coffee ?
Domain Driven Design
12
• Mod_TR_019_R2_0118
Technical Training
Let’s do it
13