1-amaliy mashg’ulot. Obyekt modeli va uning afzalliklari


Birinchisi chaqiriladigan boshqa funksiya



Download 478,46 Kb.
bet2/3
Sana29.05.2022
Hajmi478,46 Kb.
#615008
1   2   3
Bog'liq
1-amaliy mashg’ulot. Obyekt modeli va uning afzalliklari

Birinchisi chaqiriladigan boshqa funksiya

Tasavvur qilaylik menejer kirib: "Men foydalanuvchiga elektron pochta manzilini kiritishda xato nima ekanligini aniq bilishini istayman", deydi. Endi siz funksiyani nafaqat rost yoki yolg’on, balki xato kodini ham qaytarishga o'rgatishingiz kerak: masalan, agar manzilda xato bo'lsa, 01 kodi, agar manzil spam bo'lsa, 02 kodi va boshqalarni qaytarsin. Buni amalga oshirish qiyin vazifa emas.


Siz bu funksiyaga kirasiz va uning xatti-harakatlarini o'zgartirasiz: endi rost – yolg’on o'rniga xato kodini beradi va agar xato bo'lmasa, "OK" deb yozilgan qiymatni qaytaradigan funksiya yozasiz va buning natijasida kodingiz buziladi: tekshiruvchidan rost yoki yolg’on kutilgan o'nta joyning hammasi "OK" qiymatini oladi va shu sababli buziladi.

Endi muammoni hal qilish uchun quyidagilar kerak bo’ladi:





  • yoki manzillarni tekshiruvchining yangi javoblarini tushunishga o'rgatish uchun barcha funksiyalarni qayta yozish;

  • yoki manzil tekshirgichini o'zi eski joylarga mos kelishi uchun uni qayta tuzing, lekin u sizga kerak bo'lgan joyda xato kodlarini beradi;

  • yoki xato kodlarini chiqaradigan yangi tekshirgich yozing va eski tekshirgichni eski joylarda ishlating.

Albatta, muammoni bir -ikki soat ichida hal qilish mumkin.
Ammo tasavvur qiling-a, sizda yuzlab funksiyalar bor va siz kuniga o'nlab o'zgarishlarni amalga oshirishingiz kerak va har bir o'zgarish funksiyalarni yanada murakkabroq qilishga va yanada murakkab natijalarga olib keladi. Buning natijasida esa bir joyning har bir o'zgarishi boshqa joyni buzadi. Natijada sizda o'nlab klonlangan funktsiyalar bo'ladi, ularni avval siz tushunasiz, keyin esa yo'q.
Bu spagetti kod deb ataladi va unga qarshi kurashish uchun obyektga yo'naltirilgan dasturlash ixtiro qilingan.


Obyektga yo'naltirilgan dasturlash
OYDning asosiy maqsadi murakkab kodni osonlashtirishdir. Buning uchun dastur mustaqil bloklarga bo'linadi, biz ularni obyektlar deb ataymiz.

O
byekt qandaydir murakkab tushuncha emas. Bu an’anaviy funksional dasturlashda bo'lgani kabi ma'lumotlar va funksiyalar to'plami. Siz tasavvur qila olasizmi, siz shunchaki dasturning bir qismini olib, uni qutiga solib, qopqog'ini yopib qo'ydingiz. Qopqoqli quti - bu obyekt.


Dasturchilar obyekt ichidagi ma'lumotlar xossalar, funksiyalar esa metodlar deb nomlanishiga kelishib oldilar. Lekin bu shunchaki so'zlar, aslida ular bir xil o'zgaruvchilar va funksiyalardir.

Obyektni oshxonangizdagi mustaqil elektr qurilmasi deb hisoblash mumkin. Chovgum suvni qaynatadi, pechka qiziydi, blender maydalaydi, go'sht maydalagich qiyma tayyorlaydi. Har bir qurilmaning ichida bir nechta narsalar bor: motorlar, kontrollerlar, tugmalar va boshqalar - lekin siz ular haqida o'ylamaysiz. Siz har bir paneldagi tugmachalarni bosasiz va u kutilgan narsani bajaradi va bu qurilmalarning kombinatsiyasi tufayli siz kechki ovqatga ega bo'lasiz.


Ob'ektlar to'rt so'z bilan tavsiflanadi: inkapsulyatsiya, abstraktsiya, merosxo’rlik va polimorfizm. Bu keyingi mavzularda muhokama qilinadi.
Ushbu yondashuv har bir modulni boshqalardan mustaqil ravishda dasturlash imkonini beradi. Asosiysi, modullar bir -biri bilan qanday aloqa o'rnatishi va qanday qoidalarga muvofiq bo'lishi haqida oldindan o'ylash. Ushbu yondashuv yordamida siz bitta modulning ishini boshqalarga ta'sir qilmasdan yaxshilashingiz mumkin - butun dastur uchun, agar u bilan ishlash qoidalari o'zgarishsiz qolsa, har bir blokda nima bo'lishining ahamiyati yo'q.



Download 478,46 Kb.

Do'stlaringiz bilan baham:
1   2   3




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish