Dasturchilar bilishi shart bo'lgan 8 ta design pattern

Dasturiy mahsulotlarni yaratish davomida dasturchilar yechadigan umumiy muammolarni yillar davomida sinalgan yechimlari - Design patternlar(dizayn pattern) deb nomlanadi. Internetda juda ko'plab dizayn patternlari haqida ma'lumot topishingiz mumkin ulardan asosiy bilishingiz shart bo'lganlari quyida keltirilgan. Har bitta pattern bo'yicha link berilgan alohida havolida ma'lumot olishingiz mumkin
Singleton Pattern
Berilgan classning yagoni obekti yaratilganligini ta'minlaydi va unga global ruxsat olishni kafolatlaydi.
Factory Pattern
Obektlarning yaratilish logikasiga bog'liq bo'lmagan holatda ularni yaratishni ta'minlovchi pattern hisoblanadi. Bunda siz umumiy interfeys orqali kerak paramter berasiz va shu parametrdan foydalangan holatda siz kerakli bo'lgan obektlarningizni yaratib olaverasiz.
Adapter Pattern
Bu patter bir biriga to'g'ri kelmaydigan interfeyslarnining birgalikda ishlashini ta'minlaydi. Bir interfeys qabul qiluvchi parametrlarni ikkinchi interfeys berayotgan parametrlarga moslab berish orqali bu vazifani bajarib beradi.
Observer Pattern
Bu pattern o'zaro birga ko'p bog'langan obekt state(holati)laridagi o'zgarishlarni almashishga yordam beradi. Ya'ni bir obektda o'zgarish bo'lsa unga bog'liq bo'lgan barcha obektlarda bundan xabardor qilinadi va ularning statelari avtomatik o'zgaradi.
Decorator Pattern
Loyihaning runtime vaqtida dinamik ravishda obektning xususiylarni o'zgartirish yoki yangi xususiyat qo'shish uchun ishlatiladigan pattern hisoblanadi.
Strategy Pattern
Enkapsulyatsiyasi alohida va o'zaro o'rinlarni almashtirib ishlatish mumkin bo'lgan bir nechta algoritmlar guruhi strategiya patterni hisoblanadi. Bu pattern ushbu algoritmlarni loyihaning qaysi qismidan ishlatishiga bog'liq bo'lmasligi ta'minlaydi.
Command Pattern
Facade Pattern
Bu patternlarni dastur ishlab chiqish davomida ishlatishni yaxshi o'rganib olsangiz tajribangiz yana oshishi shubhasiz. Bu patternlarni yaxshi o'rganish orqali nafaqat yozgan kodingiz sifatini oshirasiz balki boshqa hamkasb dasturchilarni bilan birgalikda loyiha qilganingizda ham o'zaro bir-biringizni yaxshi tushunasiz.




