JavaRush talabalariga qulaylik yaratish maqsadida biz dasturlashning eng muhim mavzulari boʻyicha maʼruzalar va maqolalar toʻplashga qaror qildik. Birinchi tanlov dizayn naqshlari haqida. Mini-qo'llanmada biz maqolalarning mohiyatini qisqacha bayon qilamiz va agar siz havolaga rioya qilsangiz, qiziqqan mavzu haqida ko'proq bilib olishingiz mumkin. To'plamni xatcho'plaringizga qo'shing va kerak bo'lganda unga qayting.
Asosiy dizayn naqshlari bo'yicha ma'ruzalar
Singleton - bu sinfga qo'llanilishi mumkin bo'lgan eng oddiy dizayn naqshlaridan biri. Odamlar ba'zan "bu sinf singleton" deyishadi, ya'ni bu sinf singleton dizayn naqshini amalga oshiradi. Ba'zan faqat bitta ob'ekt yaratilishi mumkin bo'lgan sinfni yozish kerak bo'ladi. Masalan, ma'lumotlar bazasiga kirish yoki ulanish uchun mas'ul bo'lgan sinf.
Ushbu ma'ruzada biz "Adapter" deb nomlangan naqsh bilan tanishamiz. "Uning nomi aytiladi va siz real hayotda bir necha marta adapterlarga duch kelgansiz. Eng keng tarqalgan adapterlardan biri kartani o'qish moslamalari bo'lib, u ko'plab kompyuterlar va noutbuklar bilan jihozlangan ", deydi muallif naqsh haqida. Oldingi ma'ruzalarda bo'lgani kabi, kod misoli naqsh qanday ishlashini tushuntiradi.
Maqolada "Strategiya" deb nomlangan eng keng tarqalgan naqshlardan biri ko'rib chiqiladi. Strategiya namunasi algoritmlar oilasini belgilaydi, ularning har birini qamrab oladi va ularning bir-birini almashtirishini ta'minlaydi. Bu sizga algoritmlarni mijoz tomonidan ishlatilishidan qat'iy nazar o'zgartirish imkonini beradi.
Bridge bu muammoni bir yoki bir nechta sinflarni alohida ierarxiyalarga bo'lish orqali hal qiladi - abstraktsiya va amalga oshirish. Bir ierarxiyadagi funksionallikning o'zgarishi boshqasining o'zgarishiga olib kelmaydi. Maqolada naqshning ijobiy va salbiy tomonlari, u qayerda qo'llanilishi va uning qanday ishlashi amalda tushuntirilgan.
Proksi namunasi ob'ektga boshqariladigan kirish bilan bog'liq muammolarni hal qilishga yordam beradi. Misollardan foydalanib, muallif qanday holatlarda ushbu naqshni bilish kerak bo'lishi mumkinligini, uning afzalliklari va kamchiliklarini ko'rib chiqadi. Va juda ko'p foydali kod!
Ushbu ma'ruzada muallif Fabrika haqida gapiradi: ushbu shablon yordamida qanday muammo hal qilinadi, biz zavod qahvaxona ochishda qanday yordam berishini misol qilib ko'rsatamiz. Ushbu ma'ruza shuningdek, Fabrika yaratish uchun 5 ta oddiy qadamni o'z ichiga oladi.
Siz zavod usuli nima ekanligini va bu naqsh qanday muammolarga mos kelishini bilib olasiz. Biz ushbu dizayn naqshini amalda ko'rib chiqamiz va uning tuzilishini o'rganamiz. Zavod usuli dizayn namunasi har biri o'ziga xos xususiyatlarga ega bo'lgan turli xil mahsulotlar guruhlarini yaratish muammosini hal qiladi.
Mavhum zavod nima ekanligini va bu naqsh qanday muammoni hal qilishini bilish uchun ma'ruzani o'qib chiqishingiz kerak. Ma'ruza shuningdek, foydalanuvchi interfeysi bilan qahva buyurtma qilish uchun o'zaro faoliyat platforma ilovasi uchun ramka yaratish misolini ko'rsatadi. Bonus sifatida ma'ruzada Pasxa tuxumi yashiringan, buning yordamida siz Java-dan foydalangan holda operatsion tizim nomini aniqlashni o'rganasiz va natijaga qarab u yoki bu amalni bajarasiz.
Java-da dizayn naqshlari haqida qisqacha maqola. Bu takrorlash va umumlashtirish uchun mavzuda bo'lganlar uchun foydali bo'ladi. Yoki, aksincha, naqshlarga birinchi marta murojaat qilganlar uchun - chuqurroq qazishdan oldin mavzuning birinchi sharhi uchun.
Oldingi maqolaning davomida muallif naqshlardan qanday foydalanishni ko'rsatadi.
"Intervyu savollari va javoblari" dagi dizayn naqshlari
Yoshlar bilan suhbatlashayotganda, ish beruvchilar naqshlar haqida so'rashni yaxshi ko'radilar. Ushbu maqola sizga bunday savollarga tayyorgarlik ko'rishga yordam beradi. Boshqa narsalar qatorida, u texnik intervyu uchun juda ko'p boshqa foydali ma'lumotlarni o'z ichiga oladi.
Butun matn dizayn naqshlari bilan bog'liq intervyu savollarini tahlil qilishga bag'ishlangan. Qanday naqshlar, ular nima, ular nima uchun kerak va ularni qayerda ishlatish kerak - hamma narsa ushbu maqolada.
Antipatternlar bo'yicha ma'ruzalar
Suhbat davomida sizdan antipatternlar - naqshlarning yovuz egizak aka-ukalari haqida so'rashi mumkin, shuning uchun biz ularni ushbu to'plamga qo'shishga qaror qildik.
Ushbu maqola boshqaruv, arxitektura va rivojlanish sohalarida antipatternlarni ko'rib chiqadi.
Matn oltin bolg'a, muddatidan oldin optimallashtirish, spagetti kodi va sehrli raqamlar kabi antipatternlarni ko'rib chiqadi. Umuman olganda, o'qing!
Bonus
Ushbu kitob Stackoverflow-dagi eng mashhur o'ntalikka kiradi va buning yaxshi sababi bor. Taqdimotning qulayligi, asosiy mavzu va yuqori sifatli misollar kitobni mashhur qiladi. Hech bo'lmaganda Head First seriyasi bilan tanish bo'lgan odamlar orasida bunday adabiyotni yangi boshlanuvchilar uchun juda yuzaki o'qish deb hisoblaydiganlar ko'p. Biz sharhni yoki ehtimol kitobni o'qishni va o'z xulosalaringizni chiqarishni tavsiya qilamiz.
"Refactoring.Guru" dasturlashning qorong'u masalalariga bag'ishlangan: refaktoring, dizayn naqshlari, SOLID tamoyillari va dasturlash olamidagi boshqa muhim mavzular. Saytda naqshlar katalogi mavjud bo'lib, ularning paydo bo'lish tarixi, afzalliklari va kamchiliklari tasvirlangan.
Seriyadagi boshqa materiallar: |
|
GO TO FULL VERSION