Design Patterns

Loyihalash modellariga kirish. 1-qism

Loyihalashtirish modellari Loyihalash Modellari(LM) – obyektga-yo’naltirilgan dasturlash(OYD) dasturchilar o’z muammolarini yechishda ishlatgan, tajribasida qo’llagan yechimlar. Bunday yechimlar bir qancha dasturchilar tomonidan vaqtlar mobaynida dasturlarni testlash, ishlatish jarayonlarida chiqqan muammolarni hal qilish paytida topilgan. Bu darsda LM tushunchasini qadamba qadam java dasturlash tilida ko’rib chiqamiz.

Continue reading

Factory modeli

Factory modeli eng ko’p ishlatiladigan LMdan biri hisoblanadi. Bu model yaratilish modellari turiga kiradi. Chunki, bu model obyekt yaratishning eng yaxshi yo’lini ko’rsatadi. Factory modelida foydalanuvchiga yaratish logikasini ko’rsatmay turib obyekt yaratiladi hamda bu yaratilgan obyektga umumiy interfeys orqali murojaat qilinadi.

Continue reading

Abstract Factory modeli

Abstract Factory modeli boshqa factorylarni yaratuvchi asosiy-factory yonida ishlaydi. Bu turdagi LM yaratiluvchi model turiga kiradi. Chunki bu model obyekt yaratishning eng yaxshi yo’llaridan birini beradi. Abstract Factory modelida interfeys o’zaro bog’liq obyektlarning factorylarini ularning klasslarini aniqlamasdan turib yaratishga javobgar bo’ladi. Har bir generatsiyalangan factory obyektlarni Factory modeli sifatida  beradi.

Continue reading

Singleton modeli

Singleton modeli eng sodda modellardan biri. Bu model yaratiluvchi model turiga kiradi. Bu model o’z ichiga faqat bitta obyekt yaratish mumkin bo’lgan yagona klassni oladi. Bu yagona klass o’zining obyektiga ushbu klasdan ekzemplyar olmay turib to’g’ridan to’g’ri murojaat qilish imkonini beradi.

Continue reading

Builder Pattern

Builder modeli qadamba qadam yaqinlashish orqali hamda oddiy obyektlardan foydalanib murakkab obyektlarni yasaydi. Ushbu model yaratiluvchi model turiga kiradi. Builder klassi yakuniy obyektni qadamba qadam yasaydi(quradi). Bu quruvchi klass boshqa obyektlardan mustaqil bo’ladi.

Continue reading

Prototip modeli

Prototip modeli ish jarayonini yodda saqlab qolgan holda dublikat obyektlarni yaratadi. Bu model yartiluvchi model turiga kiradi. Bu model joriy obyektning klonini yaratuvchi prototip interfeysni ishlatishni o’z ichiga oladi. Bu model qachonki yaratilishi kerak bo’lgan obyekt to’g’ridan to’g’ri yaratilganda samarasiz bo’lib hisoblansa ishlatiladi. Masalan, ma’lumotlar omboriga murojaat qilgandan so’ng birorta obyekt yaratilishi kerak bo’lsa. Bunda biz obyektni keshlaymiz, keyingi so’rovda esa uning klonini qaytaramiz hamda qachon ma’lumotlar bazasini chaqirishni kamaytirish kerak bo’lganda ma’lumotlar omborini yangilaymiz.

Continue reading

Adapter modeli

Adapter modeli ikkita o’zaro mos kelmaydigan interfeyslar o’rtasida ko’prik vazifasini o’taydi. Bu model tuzilmali model turiga kiradi. Chunki u ikkita mustaqil interfeyslarning imkoniyarlarini birlashtiradi. Bu model o’z ichiga o’zaro mos kelmaydigan yoki mustaqil interfeyslarning funksiyasalarini birlashtiruvchi yagona klassni oladi. Hayotiy misol sifatida xotira kartasi va noutbuk o’rtasida ko’prik bo’lib qiladigan karta o’quvchi qurilmani keltirish mumkin. Xotira kartasini karta o’quvchi qurilma ichiga, qurilmani esa noutbukka kiritganingizda xotira kartasidagi ma’lumotlarni noutbuk orqali o’qishingiz mumkin bo’ladi.

Continue reading