|
Inheritance (Meros olish)Bog'liq M.I Pythonda obyektga yo’naltirilgan dasturlash 6Inheritance (Meros olish)
Merosxo'rlik - bu haqiqiy dunyo meros tushunchasini simulyatsiya qiladigan
ob'ektga yo'naltirilgan dasturlashning eng muhim jihati. Bola ob'ekti ota-onaning
barcha
xususiyatlarini
va
xatti-harakatlarini
egallashini
belgilaydi.
Merosdan foydalanib, biz boshqa sinfning barcha xususiyatlari va xatti-
harakatlaridan foydalanadigan sinfni yaratishimiz mumkin. Yangi sinf hosil
bo'lgan sinf yoki bola klassi, xossalari olingan sinf esa asosiy sinf yoki ota-ona
sinfi sifatida tanilgan. Bu kodning qayta ishlatilishini ta'minlaydi.
Polymorphism (Polimorfizm)
Polimorfizm tarkibida ikkita "poli" va "morflar" so'zlari mavjud. Poli ko'p, morflar
esa shakllar degan ma'noni anglatadi. Polimorfizm bilan biz bitta vazifani har xil
usulda bajarish mumkinligini tushunamiz. Masalan, sizda sinf hayvonlari bor, va
barcha hayvonlar gapirishadi. Ammo ular boshqacha gapirishadi. Bu erda
"gapirish" harakati ma'noda polimorf va hayvonga bog'liq. Shunday qilib, mavhum
"hayvon" tushunchasi aslida "gapirmaydi", lekin aniq hayvonlar (it va mushuklar
kabi) "gapirish" harakatini aniq amalga oshiradilar.
Encapsulation (Inkapsulyatsiya)
Inkapsulyatsiya – obyektga yo’naltirilgan dasturlashning muhim jihati
hisoblanadi. U metodlar va o’zgaruvchilarga kirishni cheklash uchun ishlatiladi.
Inkapsulyatsiya kod va ma’lumotlar tasodifan o’zgartirilishidan bir bir ichida
birlashtiriladi.
Data abstraction (Ma'lumotlarni abstraktsiya qilish)
Ma'lumotlarni ajralish va inkapsulyatsiya qilish ikkalasi ham ko'pincha sinonim
sifatida ishlatiladi. Ikkalasi ham deyarli sinonimdir, chunki ma'lumotlar
abstraktsiyasiga inkapsulyatsiya orqali erishiladi. Abstraktsiya ichki tafsilotlarni
yashirish va faqat funksionallikni ko'rsatish uchun ishlatiladi. Biron bir narsani
mavhumlashtirish, bu narsa funktsiyalar yoki butun dastur bajaradigan ishlarning
mohiyatini o'z ichiga olishi uchun narsalarga nom berishni anglatadi.
Ob'ektga yo'naltirilgan va protseduraga yo'naltirilgan dasturlash tillari
|
| |