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



Download 7,21 Mb.
Pdf ko'rish
bet29/343
Sana17.11.2022
Hajmi7,21 Mb.
#867526
1   ...   25   26   27   28   29   30   31   32   ...   343
Bog'liq
Eric Evans 2003 - Domain-Driven Design - Tackling Complexity in the Heart of Software

Itinerary
.
User:
You won't have to worry about this on origin or destination, since the 
Itinerary
would
always change then.
Developer:
Fine, but it will be simpler for us to just do the comparison every time. The 
Itinerary
will only be generated when the 
Route Specification
is no longer satisfied.
The second dialog conveys more of the intent of the domain expert. The user employed the word
"itinerary" in both dialogs, but in the second it was an object the two could discuss precisely,
concretely. They discussed the "route specification" explicitly, instead of describing it each time in
terms of attributes and procedures.
These two dialogs were deliberately constructed to closely parallel each other. Realistically, the
first would have been more verbose, bloated with explanations of application features and
miscommunications. The domain-model-based terminology of the second design makes the second
dialog more concise.
[ Team LiB ]


[ Team LiB ]
Modeling Out Loud
The detachment of speech from other forms of communication is a particularly great loss because
we humans have a genius for spoken language. Unfortunately, when people speak, they usually
don't use the language of the domain model.
That statement may not ring true for you initially, and indeed there are exceptions. But the next
time you attend a requirements or design discussion, really listen. You'll hear descriptions of
features in business jargon or layman's versions of the jargon. You'll hear talk about technical
artifacts and concrete functionality. Sure, you'll hear terms from the domain model; obvious nouns
in the common language from the business jargon will typically be coded as objects, and so those
terms will tend to be mentioned. But do you hear phrases that could even remotely be described in
terms of relationships and interactions in your current domain model?
One of the best ways to refine a model is to explore with speech, trying out loud various
constructs from possible model variations. Rough edges are easy to hear.
"If we give the 
Routing Service
an origin, destination, and arrival time, it can look up the
stops the cargo will have to make and, well . . . stick them in the database." (
vague and
technical
)
"The origin, destination, and so on . . . it all feeds into the 

Download 7,21 Mb.

Do'stlaringiz bilan baham:
1   ...   25   26   27   28   29   30   31   32   ...   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