Ob'ektga yo'naltirilgan dasturlash
Download 23.08 Kb.
|
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
ma'muriyatiga murojaat qiling