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



Download 7,21 Mb.
Pdf ko'rish
bet192/343
Sana17.11.2022
Hajmi7,21 Mb.
#867526
1   ...   188   189   190   191   192   193   194   195   ...   343
Bog'liq
Eric Evans 2003 - Domain-Driven Design - Tackling Complexity in the Heart of Software

Carve Off Subdomains
You just can't tackle the whole design at once. Pick away at it. Some aspects of the system will
suggest approaches to you, and they can be factored out and worked over. You may see a part of
the model that can be viewed as specialized math; separate that. Your application enforces
complex rules restricting state changes; pull this out into a separate model or simple framework
that lets you declare the rules. With each such step, not only is the new module clean, but also the
part left behind is smaller and clearer. Part of what's left is written in a declarative style, a
declaration in terms of the special math or validation framework, or whatever form the subdomain
takes.
It is more useful to make a big impact on one area, making a part of the design really supple, than
to spread your efforts thin. Chapter 15 discusses in more depth how to choose and manage
subdomains.
Draw on Established Formalisms, When You Can
Creating a tight conceptual framework from scratch is something you can't do every day.
Sometimes you discover and refine 
one
of these over the course of the life of a project. But you
can often use and adapt conceptual systems that are long established in your domain or others,
some of which have been refined and distilled over centuries. Many business applications involve
accounting, for example. Accounting defines a well-developed set of 
ENTITIES
and rules that make
for an easy adaptation to a deep model and a supple design.
There are many such formalized conceptual frameworks, but my personal favorite is math. It is
surprising how useful it can be to pull out some twist on basic arithmetic. Many domains include
math somewhere. Look for it. Dig it out. Specialized math is clean, combinable by clear rules, and
people find it easy to understand. One example from my past is "Shares Math," which will end this
chapter.

Download 7,21 Mb.

Do'stlaringiz bilan baham:
1   ...   188   189   190   191   192   193   194   195   ...   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