Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
20
WojciechFliegner
chowań.Realizacjatakiejoperacjijestdlaobiektuusługijedynymcelem
istnienia.ZasadniczymzastrzeżeniemwobectejkoncepcjiEvansajestzagroże-
nieskierowaniemprojektunatoryprogramowaniaproceduralnego.Każdypro-
jektantmusiostrożnieprzeanalizowaćpotrzebęstworzeniatakiejusługiiocenić
torozwiązaniepodkątemzasadprojektowaniazorientowanegoobiektowo.
Wpraktycepotrzebatworzeniausługdziedzinowychwystępujejednakspo-
radycznie.Napewnowartoskorzystaćztejmożliwościwtedy,gdyitakwy-
stępujekoniecznośćwprowadzeniaodrębnejklasyzawierającejdanąoperację
biznesową.Jawnezadeklarowaniejejjakousługowejiprzydzielenienazwy
z„wszechobecnegojęzyka”sprawi,żemodelstaniesiębardziejczytelny,akla-
saniebędziewzbudzaławątpliwościcodoswojegoprzeznaczenia.Ważnejest
też,żebyniepomylićusługdziedzinowychzusługamiinfrastrukturalnymi
iusługamiwarstwyaplikacyjnej.Przykładowo,pobraniekontrahentazbazy
danychjestoperacją,którazpewnościąniepowinnastanowićodpowiedzial-
nościżadnejzencji.Niejesttoteżoczywiścieoperacjazwiązanabezpośrednio
zdziedzinąbiznesową,leczraczejztechnicznymiaspektamikomunikacji
zbaządanych,zatemniewątpliwieniepowinnazostaćumieszczonawmodelu
dziedziny.Typowymprzykłademjesttransferfunduszyzjednegokontana
drugie.Operacjatanieprzynależymerytoryczniedożadnejkonkretnejencji(bo
jeślidokonta–todoktórego?).Ponadto,maznaczeniebiznesoweijestbez-
stanowa.Jestzatemdobrymkandydatem,abyumieścićjąwspecjalniestwo-
rzonejklasiestanowiącejusługędziedzinową.
Podsumowanie
MetodykaDomain-DrivenDesigndajemożliwośćdokładnegozrozumienia
iodwzorowaniadziedzinybiznesowej,cozkoleimabezpośrednieprzełożenie
najakośćpowstającegooprogramowania.Jesttometodykaprzeznaczonądla
aplikacjibiznesowych.Ponadto,ważnymkryteriumjejstosowalnościjestzło-
żonośćlogikibiznesowej.Wniewielkichprojektach,którychlogikasprowadza
siędoprostejwalidacji(takjestczęstowmniejszychserwisachinternetowych),
stosowaniepraktykDDDnieprzyniesiezwyklewielkiegozysku.Towsyste-
machzezłożonymiregułamiiprocesamibiznesowymipodejścieDomain-
-DrivenDesignjestnajbardziejefektywneidlatakichsystemówjestzalecane
przezautorów.