Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
10
Rozdział1:Wposzukiwaniumodułowejarchitekturyoprogramowania
Warstwadanych
Totuinformacjeprzetwarzaneprzezaplikacjęutrwalaneiodczytywane.Wielkość
(„grubość”)tejwarstwyjestbardzozmienna.Możełączyćsięonazserwerembazy
danychrelacyjnymalboNoSQLalbomożebyćzbudowanaprzezkodgenerujący
surowewywołaniadoserweramagazynującegopoprzezdedykowaneodwzorowania
obiektowo-relacyjne(object-relationalmappersORM),takiejakEntityFramework
(EF)alboDapper.
Wostatnimczasiewarstwadanychdoczekałasięnowejabstrakcjiwformiewarstwy
infrastrukturalnej,dlaktórejutrwalaniedanychjestgłówną,aleniejedynąodpowie-
dzialnością.Postrzeganajakoinfrastruktura,tawarstwajestrównieżodpowiedzialna
zaemaileipołączeniazzewnętrznymiAPI.
Ważne
Podstawowymcelemarchitekturywielowarstwowejjestosiągnięcieseparacjiza-
gadnień(SoC)izagwarantowanie,żeróżnerodzajezadańwykonywanewodpowiednio
odizolowanymśrodowisku.GłównąkonsekwencjąSoC,szczególnieprzystosowaniuwzglę-
demwieluwarstw,jestto,żezależnościpomiędzywarstwamimusząbyćściśleregulowane.
Omówienietego,jakzaplanowaćseparacjęzagadnieńpomiędzywarstwywkontekścieapli-
kacjiwebnapisanejdlastosu.NET,stanowigłównyceltejksiążki.
KanonicznaarchitekturaDDD
NapoczątkuXXIwiekubranżaprogramistycznastanęławobliczugigantycznego
wyzwania:zmodernizowania,alboprzynajmniejzmigrowaniaistniejącychaplikacji
biznesowych,abywykorzystaćnowemożliwościwynikającezgwałtownegorozwoju
Internetu.Próbyzaadaptowaniaaplikacjinamainframe’ywceluobsłużeniarosnącego
popytunae-commercewprowadziłyzłożonościomonumentalnychrozmiarach.
Trzywarstwowa(czyteżtrzypoziomowa)architekturazaczęłapękaćpodciężarem
tejzłożonościnietakbardzozpowoduwrodzonejnieefektywności,aleraczej
zewzględunapotrzebęzwiększeniamodularnościwceluzarządzaniawymagania-
mibiznesowymiiimplementacyjnymi,atakże(miejmynadzieję)skalowalności.(To
wtymczasieterminskalowalnośćzdobyłpopularnośćiuzyskałtoznaczenie,które
znamydziśzdolnośćsystemudozapewnieniadobregopoziomuobsługinawetwte-
dy
,gdyliczbażądańwzrośnienieoczekiwanie).
Metodologiaprojektowaniadziedzinowego(domain-drivendesignDDD)usyste-
matyzowaławielepraktykirozwiązań,którepotwierdziłyswojąskuteczność.Wraz
zmetodologiąprojektowaniapowstałarównieżkanoniczna,wspierającaarchitektura.
UwagaNieprzypadkowoużyłemokreślenia„monumentalnazłożoność”.Jesttocytat
zopowieścizasłyszanychodludzi,którzyzdefniowaliDDDihołddlanichwszystkich.