Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Modelowaniedziedzinybiznesowej...
13
PunktemwyjściadlaEvansabyłozałożenie,żekluczowymelementem
systemujestlogikabiznesowaitoonapowinnastaćwcentrumprocesuwy-
twarzaniaoprogramowania.Logikabiznesowawformiemodeludziedziny,
realizowanazgodniezwzorcemDomainModel,powinnabyćniezależnaod
pozostałychelementów,takichjakinfrastrukturaczyinterfejsużytkownika.
Dziękitemumogłabybyćrozwijanabezkoniecznościuwzględnianiaprob-
lemówczystotechnologicznych,ajejmigracjananowąinfrastrukturęnie-
uniknionaprzecieżprzywiększychsystemachmogłabybyćprzeprowadzana
bezżadnychwiększychmodyfikacji.Programiścizajmującysiętączęściąapli-
kacjimoglibyskupićsięnadobrymzrozumieniudziałalnościipotrzebklienta,
niebędącrozpraszanymiprzezszczegółytechniczne.
PowyższespostrzeżeniaEvansaniewydająsięniczymrewolucyjnym,te
podstawowezałożeniaznanebyływtejczyinnejformiejużoddawna.Główna
jegozasługapoleganazebraniuwszystkichelementówwjednącałość,usyste-
matyzowaniuprocesuorazuświadomieniuprojektantomwyjątkowegoznacze-
niatychtechnikiichwpływunaefektkońcowy.
WtypowejaplikacjiDDDmożemyzatemwyróżnićczterywarstwy
(rys.2):
warstwęprezentacji,czyliinterfejsużytkownikanajlepiej,jeślijestzorga-
nizowanyzgodniezewzorcemModel-View-Controller[Fowl02],
warstwęaplikacyjną,pełniącąfunkcjękoordynacyjnąobejmujeonalo-
gikęaplikacyjną(alenielogikębiznesową),
warstwędziedziny(modeldziedziny),zawierającąlogikębiznesową,
infrastrukturę,czylimiędzyinnymidostępdodanych,alenietylko(wtej
warstwiemogąznaleźćsięteżimplementacjeżnychserwisówinfra-
strukturalnych)
1.
1Naprzykład,realizującewysyłaniee-mailiczyzajmującesiętechnicznymiaspektamikomunikacji
zzewnętrznymsystemem.