Domain-Driven Design: Tackling Complexity in the Heart of Software



Download 7,21 Mb.
Pdf ko'rish
bet297/343
Sana17.11.2022
Hajmi7,21 Mb.
#867526
1   ...   293   294   295   296   297   298   299   300   ...   343
Bog'liq
Eric Evans 2003 - Domain-Driven Design - Tackling Complexity in the Heart of Software

Deep Models Distill
Distillation does not operate only on the gross level of separating parts of the domain away from
the 
CORE
. It also means refining those subdomains, especially the 
CORE DOMAIN
, through
continuously refactoring toward deeper insight, driving toward a deep model and supple design.
The goal is a design that makes the model obvious, a model that expresses the domain simply. A
deep model distills the most essential aspects of a domain into simple elements that can be
combined to solve the important problems of the application.
Although a breakthrough to a deep model provides value anywhere it happens, it is in
the 
CORE DOMAIN
 that it can change the trajectory of an entire project.
[ Team LiB ]


[ Team LiB ]
Choosing Refactoring Targets
When you encounter a large system that is poorly factored, where do you start? In the XP
community, the answer tends to be either one of these:
Just start anywhere, because it all has to be refactored.
1.
Start wherever it is hurting. I'll refactor what I need to in order to get my specific task done.
2.
I don't hold with either of these. The first is impractical except in a few projects staffed entirely
with top programmers. The second tends to pick around the edges, treating symptoms and
ignoring root causes, shying away from the worst tangles. Eventually the code becomes harder
and harder to refactor.
So, if you can't do it all, and you can't be pain-driven, what do you do?
In a pain-driven refactoring, you look to see if the root involves the 
CORE DOMAIN
or the
relationship of the 
CORE
to a supporting element. If it does, you bite the bullet and fix that
first.
1.
When you have the luxury of refactoring freely, you focus first on better factoring of the 
CORE
DOMAIN
, on improving the segregation of the 
CORE
, and on purifying supporting subdomains
to be 
GENERIC
.
2.
This is how to get the most bang for your refactoring buck.
[ Team LiB ]


[ Team LiB ]

Download 7,21 Mb.

Do'stlaringiz bilan baham:
1   ...   293   294   295   296   297   298   299   300   ...   343




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish