Ob'ektga yo'naltirilgan dasturlash


Download 23.08 Kb.
bet2/2
Sana06.04.2023
Hajmi23.08 Kb.
#1330461
1   2
inkapsulyatsiya ikki xilda tushuniladi. Ko'p tillarda bu atama degan ma'noni anglatadi
ma'lumotlarni yashirish, ya'ni ichki ma'lumotlarga bevosita kirish imkoni yo'qligi
ob'ekt tuzilishi, chunki u xavfsiz emas. Misol uchun, siz oshqozoningizni ovqat bilan to'ldirishingiz mumkin
to'g'ridan-to'g'ri oshqozonga oziq-ovqat qo'yish orqali. Lekin bu xavfli. Shuning uchun, oshqozonga to'g'ridan-to'g'ri kirish
yopiq. Uni oziq-ovqat bilan to'ldirish uchun siz ostidagi interfeys elementi orqali marosim o'tkazishingiz kerak
og'iz nomi.
Python-da bunday inkapsulyatsiya mavjud emas, garchi u OOP standartlaridan biri bo'lsa ham. IN
Python ob'ektning istalgan atributiga kirishi va uni o'zgartirishi mumkin. Biroq, u erda
agar haqiqatan ham zarur bo'lsa, ma'lumotlarni yashirishni simulyatsiya qilish imkonini beruvchi mexanizm.
Python-da ma'lumotlarni yashirishning etishmasligi dasturlashni osonlashtiradi, ammo
nom maydonlari bilan bog'liq bir qator xususiyatlarni keltiradi.
Inkapsulyatsiyaning ikkinchi ma'nosi ob'ektlarning xususiyatlari va ularning tavsifini birlashtirishdir
xulq-atvorni bir butunga, ya'ni sinfga aylantiradi. Bu ma'noda inkapsulyatsiya o'zidan kelib chiqadi
ob'ektga yo'naltirilgan dasturlash g'oyalari va shunga mos ravishda hamma mavjud
OO tillari.
Polimorfizmni shakllar to'plami sifatida tarjima qilish mumkin. OOPda polimorfizm ostida
quyidagilar tushuniladi. Turli xil sinflarning ob'ektlari, turli xil ichki amalga oshirish, ya'ni
dastur kodi, "bir xil" usullarga ega bo'lishi mumkin. Aslida, usullar
faqat nomlar mos keladi, lekin ulardagi kod (ular nima qiladi) boshqacha. Bu
ma'lum bo'lishicha, bitta ismning ko'p shakllari bor.
Masalan, raqamlar uchun + belgisi bilan belgilanadigan qo'shish amali mavjud. Biroq, biz
ob'ektlari ham operatsiyani qo'llab-quvvatlaydigan sinfni aniqlashimiz mumkin,
bu belgi bilan belgilangan. Lekin bu umuman ob'ektlar raqamlar bo'lishi kerak degani emas va
bir qancha miqdor bo'ladi. Sinfimiz ob'ektlari uchun + operatsiyasi ma'nosini anglatishi mumkin
boshqa bir narsa. Ammo interfeys, bu holda bu + belgisi, raqamlar va bizning sinfimiz bo'ladi
xuddi shu. Polimorfizm esa ichki amalga oshirishda va operatsiya natijasida namoyon bo'ladi.
Polimorfizm nafaqat ob'ektlarga ruxsat bergani uchun foydalidir
standart operatsiyalarda ishtirok etish uchun maxsus sinflar. Agar ob'ektlar boshqacha bo'lsa
sinflar bir xil nomdagi usulga ega bo'lsa, unda bunday heterojen ob'ektlar to'plami bo'lishi mumkin
bir tsiklda qayta ishlanadi.
Download 23.08 Kb.

Do'stlaringiz bilan baham:
1   2




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