refactoring for domain driven design
Post on 22-Nov-2014
1.757 Views
Preview:
DESCRIPTION
TRANSCRIPT
Refactoring towardsDomain Driven Design
DAV ID BERL INER
The sources of all knowledge:
Who am I ?Developer at BetTech.I've been coding for a decade.@manatok
“…is a disciplined technique for restructuring an existing body of code,
altering its internal structure without changing its external behavior.…”
Martin Fowler
+ Adding features
+ Shortcuts and hacks
+ Team growth
= increased complexity
No thanks!We're
too busy.
TIME
CU
MU
LATI
VE F
UN
CTI
ON
ALIT
Y
NO DESIGN
GOOD DESIGN
DESIGN PAY-OFF LINE
So...how do we do it?
Refactoring requires prioritisation
Boyscout refactoring
What is considered “code litter”?
DomainDriven
Design
Ubiquitous language
Bounded context
Ubiquitous
Language
Define
model
with
Identify
model
with
Process
model
with
Express
model
with
MODEL DRIVEN DESIGN
Express
model
with
Isolate
domain
with
Express
state change
with
Bounded
ContextsServices Entities
Value
Objects
Layered
ArchitectureEvents
AN
TI-
CO
RR
UP
TIO
N L
AY
ER
AN
TI-
CO
RR
UP
TIO
N L
AY
ER
final thoughts
+ You don’t have to drink ALL the kool-aid to benefit
+ See the good side of a messy system
+ Be consistent
Thankyou
top related