Kitabyň aýratynlyklary
Ilki bilen dizaýn nagyşlary, nagyşlaryň nämedigini, olary nädip ulanmalydygyny we olar hakda nähili pikirlenmelidigini aýdýar. Bir nagyş, belli bir meseleler toplumy üçin ähliumumy çözgütdir. Dizaýn nagyşlary , öz gezeginde, ulanyjy üçin amatly we çeýe programmalary ýazmak üçin ulanylýan arhitektura çözgütleri bolup durýar. Bütin dünýäde döredijiler şol bir meseleleri şol bir çemeleşmeler bilen çözýärler. Bellikde aýdylyşy ýaly, tekeri täzeden dikeltmek islemeýän bolsaňyz, bu kitap bilen işlemek üçin taýýar dizaýn şablonlaryny (nagyşlaryny) ulanyň . Aýry-aýrylykda, materialyň görkezilişini bellemelidiris: “Head First” seriýasyndaky kitaplar ýönekeýligi bilen meşhurdyr we bir oturgyçda okalýar. “Dizaýn nagyşlary” hem muňa degişli däldir. Şeýle hem aşakdaky esasy ýörelgelere eýerýär:- Görünmek
- Gepleşik stili
- Köp sanly suratlar
- Işjeň okyjynyň gatnaşmagy
- Duýgulara ýüzlenmek
- Okyjynyň ünsüni özüne çekmek
Esasy tema we esasy pikir
“Elbetde, kimdir biri siziň meseläňizi eýýäm çözdi” - kitabyň birinji bölümi programmirlemekde dizaýn nagyşlarynyň ähli manysyny düşündirip başlaýar. Esasy maksat, manylaryny okyja dogry ýetirmekdir, sebäbi ilki bilen programmist nagyşlaryň nämedigini we haýsy nokatda ulanylmalydygyny bilmelidir. Aslynda, galyplary kelläňizdäki ownuk böleklere bölmeli we diňe şondan soň olary programmalara girizmeli. Programmirleme bilen meşgullanýanlar nagyşlara gowy düşünýän bolsa, olary ulanmak kody hasam kynlaşdyryp biler (ýöne ýönekeýleşdirmeli!). “Näme üçin dizaýn nagyşlary ulanylmaly?” Diýen soraga Kitapda aýdyň jogap berilýär: “Abstraksiýa, miras we polimorfizm ýaly düşünjeleri bilmek sizi gowy OO dizaýneri edip bilmez. Bu nagyşlarda subut edilen OO dizaýn tejribesi bar. ”"Gysgaça mazmun"
Kitap 14 bölüme we giriş sözüne bölünýär. Kitabyň awtorlary başynda okyjyny taýýarlamaga, nagyş dizaýny baradaky maglumatlary dogry kabul etmek üçin beýnisini sazlamaga synanyşýarlar. Birinji bap nagyşlaryň esasy ýörelgesini we haýsy maksatlara hyzmat edýändigini düşündirýär. Iň köp ulanylýan nagyşlaryň biri - strategiýa - aňsat we birkemsiz gözden geçirilýär. Ikinji-on birinji baplar aýratyn nagyşlaryň jikme-jik derňewine bagyşlanýar :- Synçy. Wakalary ýüze çykmagy bilen gyzyklanýan obýektleriň arasynda paýlaýar.
- Bezeg. Java-da mirasa başga bir göz aýlamak we kody üýtgetmän Java synplaryna täze mümkinçilikler bermek.
- Zawod. Nusga kody islenmeýän garaşlylyklardan tygşytlaýar.
- Leeke. “Singleton” diýlip hem atlandyrylýan bu, tutuş programma üçin ýekeje synp obýektini döretmäge mümkinçilik berýär.
- Topar. Bu nagyş, mümkinçiliklerini giňeldip, usul çagyryşyny aňsatlyk bilen jemlemäge mümkinçilik berýär.
- Adapter we fasad. Interfeýsiň gabat gelmezligi meselesini çözmek, şeýle hem interfeýsini ýönekeýleşdirmek üçin gaplaýyş obýektleri.
- Şablon usuly. Algoritmiki bloklaryň encapsulýasiýasy, kiçi toparlara islän wagtyňyz gaýtadan işlemek algoritmi bilen birleşmäge mümkinçilik berýär.
- Iterator we baglanyşdyryjy. Bu nagyş, görnüşine garamazdan kolleksiýalar arkaly gaýtalamak üçin amatly gural bilen üpjün edýär. Mundan başga-da, bap superkolleksiýalar barada käbir maglumatlary berýär.
- Döwlet. Obýektlere içerki ýagdaýynyň üýtgemegi arkaly özlerini alyp barşyna gözegçilik etmek ukyby berilýär.
- Deputat. Bir obýekte girişi dolandyrmak üçin örän amatly nagyş.
Üstünlikleri we kemçilikleri
JavaRush-da okaýanlaryň köpüsi ýaly, içgysgynç leksiýalara, materiallara we beýleki bilime teşne bolan okuwçynyň psihikasyna garşy zorluga sowuk garaýaryn. Düşünip bolmaýan tekstleri ýatda saklamak üçin sarp edilýän energiýa, meniň pikirimçe, alternatiw okuw çeşmelerini tapmaga sarp edilýär. Bu kitap wagtyňyza we güýjüňize laýykdyr. Ajaýyp görkeziş stili, okyjynyň ünsüni başarnykly dolandyrmak we esasy nokatlaryň gaýtalanmagy bu kitabyň esasy artykmaçlygyny - materialyň assimilýasiýasynyň aňsatlygyny emele getirýär . Köp sanly suratlar goşmaça goşmaça. Meniň pikirimçe, kitapdaky her bir suratyň öz orny bar: hemmesi size awtorlaryň sözlerini güýçlendirmäge we materialyň düýp manysyna has çuňňur düşünmäge mümkinçilik berýär. Aboveokarda ýazyşym ýaly, bu kitap salgylanma kitaby däl: awtorlary ähli nagyşlary sanamak islemeýärler. Esasy wezipesi, beýleki nagyşlary has aňsat duýmak üçin esasy nagyşlara düşünmek we gürleşmek. Ol bu 100% -i başdan geçirýär. Adetmezçilikleriniň arasynda, rus dilinde baş dizaýn nagyşlarynyň iňlis dilindäki ýaly okamak aňsat däldigi. Elbetde, her bir dörediji iňlisçe gürlemeli, ýöne täze işleýän programmistler bu ussatlygy elmydama kitaplary asyl görnüşinde okap biljek derejede ösdürmeýärler. Şeýle-de bolsa, material gaty takyk görkezilendigi we manysy saklanýandygy sebäpli, mejbury minus hasap edilip bilner.Dizaýn nagyşlary barada goşmaça kitaplar
Esasy çeşmeleri birnäçe çeşmeden öwrenmek we olardan laýyk görkeziş stilini gözlemek has gowudyr diýen ynamyň tarapdary. Haçan-da nagyşlara çümüp, goşmaça teoriýa okamak isleseňiz, maňa ynanyň, agşamlaryňyzy gyzyklandyrjak bir zat bolar.-
Obýekte gönükdirilen dizaýn usullary. Dizaýn nagyşlary (Gamma E., Helm R., Johnson R., Vlissides J.).
Bu has çynlakaý neşir, nagyşlar kitaby, “Dört topar” atly abraýly kitap. Köpler oňa OO dizaýnynyň Injili diýýärler.
Internetde işläp düzüjileriň pikirleri 3 lagere bölünýär:
- käbirleri kitabyň köne bolandygyny we görkeziş stiliniň okamagyň mümkin däldigini öňe sürýärler
- beýlekiler kitaby diňe nagyşlar üçin salgylanma kitaby hökmünde ulanmagy maslahat berýärler, başga hiç zat ýok
- beýlekiler bu kitabyň dizaýn nagyşlarynyň mukaddes çukurydygyny we bir gün Javaaşuly Java dörediji bolmak isleýänleriň hemmesiniň okamalydygyny aýdýarlar
Üns beriň:Kitapdaky mysallar C ++ bilen ýazylýar.
-
Java EE. Hünärmenler üçin dizaýn nagyşlary (Murat Yener, Aleks Fidom).
Bu kitap Kärhana programmalarynyň dizaýnyna bagyşlanýar: hakyky durmuşda ulanylýan meseleleriň köp mysallaryny öz içine alýar.
-
Java-da dizaýn nagyşlary (Grand M.).
Kitap nagyşlaryň ulanylyşynyň işläp düzüjileriň wagtyny tygşytlaýandygyny, UML diline syn berýändigini we 47 dizaýn nagşyny beýan edýändigini reňk bilen görkezýär.
JavaRush-da dizaýn nagyşlary
JavaRush kursunda dizaýn nagyşlary Java kolleksiýa gözleginiň 7-nji derejesinde öwrenilýär. 1-nji we 2-nji leksiýalar iň köp ýaýran nagyşlara bagyşlanýar we 4-nji leksiýada bu mowzukdaky meseleleri çözüp bilersiňiz. Aşakda "özüňizi güýçlendirmek" üçin gyzykly makalalar bar:-
Kategoriýalar, mysallar, halaýan zatlarymyz bilen nagyşlar mowzugynda umumy makala .
-
Nagyşlar barada iki makala: 1-nji bölüm syn we has jikme-jik 2-nji bölüm .
-
Mysal hökmünde Singleton nagşyny ulanyp dizaýn nagyşlary .
-
“ Strategiýa ” we “ Adapter ” nagyşlary barada makalalar.
-
Dizaýn nagyşlary düşünjesi UML diagrammalary bilen baglanyşykly, bu makala olaryň nämedigine düşünmäge kömek eder.
GO TO FULL VERSION