Yangi Oʻzbekistonni, albatta, yoshlar bilan birga quramiz. 2020-yil yoshlarga


-rasm. Publisher dan Clientga bo‘lgan boshliqlik diogrammasi


Download 1.38 Mb.
Pdf ko'rish
bet24/28
Sana10.01.2023
Hajmi1.38 Mb.
#1087113
1   ...   20   21   22   23   24   25   26   27   28
Bog'liq
Adxam Soataliyev BMI65018

4.2.1-rasm. Publisher dan Clientga bo‘lgan boshliqlik diogrammasi 
Publisher (Mavzu) — obunachi (kuzatuvchi) ob'ektlarini biriktirish va ajratish 
uchun interfeysni taqdim etadi , kuzatuvchilar ro‘yxatini o‘z ichiga oladi; (Ixtiyoriy) 
Concrete Publishers — Beton obunachilar uchun qiziqish holatini saqlaydi va holat 
o‘zgarganda kuzatuvchilarga bildirishnoma yuboradi. Bu sinf faqat bitta turdagi 


63 
Publisher kerak bo‘lganda ixtiyoriydir. Bunday holda, holat va bildirishnoma mantig‘i 
nashriyotchi tomonidan boshqariladi; 
Obunachi (Kuzatuvchi) — Mavzudagi oʻzgarishlar toʻgʻrisida xabardor qilinishi 
kerak boʻlgan obʼyektlar uchun bildirishnoma interfeysini eʼlon qiladi ; Concrete 
Subscribers — obunachi (kuzatuvchi) interfeysini uning holatini subʼyekt holatiga mos 
holda saqlash uchun amalga oshiradi; Mijoz — Subyekt va Observer obyektlarini 
yaratadi , kuzatuvchilarni mavzu yangilanishlariga biriktiradi. 
Observer va Mediator. Agar siz Mediator dizayn namunasi bilan tanish 
bo‘lsangiz, qandaydir deja vuni his qilishingiz mumkin - Observer dizayn namunasi 
xuddi shu narsa emasmi? 
Mediator dizayn naqshining asosiy maqsadi aloqa qismini boshqaradigan maxsus 
vositachi ob'ektidan foydalangan holda ob'ektlar orasidagi ko‘pdan ko‘pga 
munosabatlarni birdan ko‘pga munosabatlarga almashtirishdir. Observer ob'ektlar 
o‘rtasida dinamik bir tomonlama aloqani o‘rnatishga imkon beradi, bunda ba'zi ob'ektlar 
boshqalarga bo‘ysunadi. Agar sizda uning holatiga obuna bo‘lishga ruxsat beruvchi 
faqat bitta vositachi bo‘lsa, bu amalga oshirish Observer dizayn namunasiga asoslanadi, 
lekin Mediator dizayn namunasi ham faqat nashr etish-obuna aloqasining bir qismi 
sifatida ishlatilishi mumkin. Endi, agar bizda bir nechta noshirlar va bir nechta 
obunachilar (ular ham noshirlar bo‘lishi mumkin) bo‘lsa, hech qanday vositachi ob'ekti 
bo‘lmaydi, faqat kuzatuvchilarning taqsimlangan to‘plami.
Qo‘llanilishi. Observer dizayn namunasi bir ob'ektni o‘zgartirish boshqalarni 
o‘zgartirishni talab qilganda qo‘llanilishi kerak, lekin siz qancha ob'ektni va qanday 
o‘zgartirish kerakligini bilmaysiz. Shakl bunday ob'ekt hodisalariga obuna bo‘lish va 
tegishli ob'ektning holatini o‘zgartirish imkonini beradi. Bundan tashqari, bu naqsh ba'zi 
ob'ektlar boshqalarni kuzatishi kerak bo‘lganda ishlatilishi kerak, lekin faqat cheklangan 
vaqt uchun. Obuna mexanizmi bog‘liq ob'ektlarga talab bo‘yicha yangilanish 
hodisalarini tinglash va ish vaqtida bu xatti-harakatni o‘zgartirish imkonini beradi. 


64 
Amalga oshirish qismi uchun biz birja prototipini amalga oshirish uchun Observer 
dizayn namunasidan foydalanamiz. Qimmatli qog‘ozlar bozorida yuzlab va minglab 
turli xil aktsiyalar mavjud. Albatta, ularning hammasi ham sizga tegishli emas, shuning 
uchun siz obuna bo‘lishni va faqat aniqlarini kuzatishni xohlaysiz. Prototip 3 xil 
aktsiyalarga obuna bo‘lish imkonini beradi - GameStop (GME), Alphabet Inc. aka 
Google (GOOGL) va Tesla Motors (TSLA). Bundan tashqari, ikki xil obuna turi 
mavjud: 
• 
Standart aksiya obunasi — har bir obuna boʻlgan aksiya oʻzgarishi haqida 
xabar beradi. 
• 
O‘sib borayotgan aktsiya obunasi - faqat o‘sib borayotgan aktsiya 
o‘zgarishlari haqida xabar beradi. 
Bunday qimmatli qog‘ozlar kuzatuvchisi Observer dizayn naqshidan foydalangan 
holda osongina amalga oshirilishi mumkin. Albatta, prototip faqat 3 xil turdagi 
aktsiyalarni qo‘llab-quvvatlaydi, ammo yangi aktsiya belgilari yoki hatto yangi obuna 
turlarini keyinchalik mavjud kodga ta'sir qilmasdan osongina qo‘shish mumkin. Keling, 
avval sinf diagrammasini tekshirib ko‘raylik va keyin naqshni amalga oshiramiz. 
Mavzuda har qanday miqdordagi qaram kuzatuvchilar bo‘lishi mumkin - bir xildan 
ko‘pga munosabatlarni yanada moslashuvchan tarzda saqlab qolish g‘oyasi. 
Quyidagi sinf diagrammasi Observer dizayn namunasini amalga oshirishni 
ko‘rsatadi: 


65 

Download 1.38 Mb.

Do'stlaringiz bilan baham:
1   ...   20   21   22   23   24   25   26   27   28




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling