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



Download 7,21 Mb.
Pdf ko'rish
bet178/343
Sana17.11.2022
Hajmi7,21 Mb.
#867526
1   ...   174   175   176   177   178   179   180   181   ...   343
Bog'liq
Eric Evans 2003 - Domain-Driven Design - Tackling Complexity in the Heart of Software

Accrual
Schedule
hierarchy, the developer believed that this model better follows some of the domain's
CONCEPTUAL CONTOURS
.
Figure 10.12. This model accommodates adding new kinds of Accrual
Schedules.


The one change the developer could confidently predict was the addition of new 
Accrual
Schedules
. Those requirements were already waiting in the wings. So in addition to making
existing functionality clearer and simpler, she chose a model that would make it easy to introduce
new schedules. But had she found a 
CONCEPTUAL CONTOUR
that will help the domain design change
and grow as the application and the business evolve? There can be no guarantees about how a
design will handle unanticipated change, but she thought it had improved the odds.
An Unanticipated Change
As the project proceeded, a requirement emerged for detailed rules for handling early and late
payments. As she studied the problem, the developer was pleased to see that virtually the same
rules applied to payments on interest and to payments on fees. This meant that the new model
elements would connect naturally to the single 
Payment 
class.
Figure 10.13.


The old design would have forced duplication between the two 
Payment History
classes. (This
difficulty might have triggered an insight that the 
Payment
class should be shared, leading by
another path to a similar model.) This ease of extension did not come because she anticipated the
change. Nor did it come because she made a design so versatile it could accommodate any
conceivable change. It happened because in the previous refactoring, the design was aligned with
underlying concepts of the domain.
I
NTENTION-REVEALING INTERFACES
allow clients to present objects as units of meaning rather than
just mechanisms. S
IDE-EFFECT-FREE FUNCTIONS
and 
ASSERTIONS
make it safe to use those units and
make complex combinations. The emergence of 
CONCEPTUAL CONTOURS
stabilizes parts of the model
and also makes the units more intuitive to use and combine.
We can still run into conceptual overload when interdependencies force us to think about too many
of these things at a time. . . .
[ Team LiB ]


[ Team LiB ]

Download 7,21 Mb.

Do'stlaringiz bilan baham:
1   ...   174   175   176   177   178   179   180   181   ...   343




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2025
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