Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
1.1.Pisanieutrzymywalnegokodu
9
kontenerydi
Zpoprzednimbłędnymprzekonaniembliskozwiązanejestmyślenie,że
DI
potrze-
bujeKONTENERADI.Jeśliwierzyłosięwbłędnypogląd,żeDIwykorzystujeLOKALIZATOR
USŁUG
,łatwojestteżwyjśćzzałożenia,żejeden
KONTENERDI
możeprzejąćobowią-
zkiLOKALIZATORAUSŁUG.Możeijesttojakaśopcja,aleniewtakisposóbpowinnosię
używaćKONTENERADI.
KONTENERDI
toopcjonalnabiblioteka,któraułatwiatworzenieinstancjiklas,
podczasstartuaplikacji.Niejesttojednakwymaganenarzędzie.Kiedytworzymy
aplikacjebezKONTENERADI,tensposóbnazywanyjestCZYSTYMDI.Takatechnikamoże
zająćtrochęwięcejczasu,aleniewymagapoświęceniainnychzasadDI.
DEFINICJACZYSTEDItopraktykaaplikowaniaDIbezużyciaKONTENERADI4.
WAŻNE
Jeśliktośmyślał,że
DI
wymaga
KONTENERADI
,wtakimraziejestto
kolejnypogląd,któregomusisięoduczyć.DItozbiórzasadiwzorców,aKONTE-
NERDItopomocne,aleopcjonalnenarzędzie.
Dotejporywytłumaczyliśmydokładnie,czymjest
KONTENERDI
orazjakikiedy
powinnosięgostosować.Wszczegóływejdziemynakońcurozdziału3,aczęść4książki
jestwcałościpoświęconatemuzagadnieniu.
Wydawaćsięmoże,żeponieważdotejporywskazaliśmynaczterymitynatemat
DI
,przyszedłterazczasnaprzekonującyargumentprzeciwkokażdemuznich.To
prawda.Wtakimsensie,żetaksiążkatojedenwielkiargumentprzeciwkotakiemu
błędnemumyśleniu,awięcnapewnojeszczewrócimydotejrozmowywdalszejczę-
ścipracy.Naprzykładwrozdziale5sekcji5.2omówimy,dlaczegoLOKALIZATORUSŁUG
jestantywzorcem.
Odnoszącsiędonaszegodoświadczenia,oduczeniesiębłędnychpoglądówjest
bardzoważne,ponieważludzieczęstostarająsięzmodernizowaćto,comówmyimna
tematDI,idopasowaćdotego,comyślą,żewiedząjużnatentemat.Potrzebapotem
czasu,żebywreszciezdalisobiesprawę,jakbardzomylneichpodstawowezałoże-
nia.Chcemyoszczędzićwszystkimtakiegoprzeżycia.Jeśliktośmoże,niechprzeczyta
książkętak,jakbyniewiedziałnicoDI.
1.1.2.RozumienieceluDI
DIniejestcelemkońcowymjesttośrodekdojegoosiągnięcia.DIpozwalanaluźne
wiązania,aluźnewiązaniapowodują,żekodjestbardziejutrzymywalny.Jesttodość
mocnestwierdzenieimoglibyśmyodesłaćwszystkichdopoczytaniapoważnych
4
Wpierwszejedycjitejksiążki„Wstrzykiwaniezależnościw.NET(DependencyInjectionin.NET)wy-
korzystaliśmyterminDIbiednegoczłowieka.CZYSTEDIzastąpiłotentermin,aleniechnikogoniezdziwi
staryzwrotwInternecie.Dlaczegozmieniliśmyterminologię,zob.M.Seemann(2014).PureDI[on-
line].Dostęp:https://blog.ploeh.dk/2014/06/10/pure-di/.