9-dars. OOP(Object Oriented Programming). Polimorphism. Takrorlash
Dars maqsadlari:
- Polimorfizm tushunchasini tushunish.
- Python dasturlash tilida polimorfizmni qanday amalga oshirishni o'rganish.
- Polimorfizmning afzalliklari va foydalanish usullarini bilish.
Kirish
Bugun biz OOP (Obyektga Yo'naltirilgan Dasturlash)ning muhim tushunchalaridan biri — Polimorfizm haqida gaplashamiz. Polimorfizm — bu dasturiy ta'minotda bir xil nom va turdagi metodlar yordamida bir nechta turli xil ishlarni bajarish qobiliyati hjsoblanadi. Bu OOPning kuchli xususiyatlaridan biri bo'lib, kodni soddalashtiradi va qayta ishlatishni osonlashtiradi.
Polimorfizm Nima?
Polimorfizm yunoncha "polus" (ko'p) va "morphe" (shakl) so'zlaridan olingan. Bu dasturda bir xil metod nomini turli sinflarda ishlatish imkonini beradi. Bu, asosan, sizning dasturingizni yanada tushunarli va oson o'qilishi uchun kerak. Misol uchun, agar sizda turli xil hayvonlar bo'lsa (masalan, it, mushuk), ular har xil ovoz chiqarishi mumkin, lekin bir xil metod (ovoz) dan foydalanadi.
Polimorfizm Tushunchalari
- Metodlar Polimorfizmi: Bir xil metod nomi turli sinflarda ishlatilishi. Masalan,
ovozmetodi. - Operator Polimorfizmi: Operatorlarning har xil turli xil ob'ektlar uchun turli xil ishlashi.
Python Dasturlash Tilida Polimorfizm
Python dasturlash tilida polimorfizm qanday amalga oshiriladi? Keling, misol orqali ko'rib chiqamiz.
Polimorfizm Misoli
class Hayvon: # Hayvon sinfi
def ovoz(self):
pass # Abstrakt metod
class It(Hayvon): # It sinfi
def ovoz(self):
return "Barking" # Itning ovozi
class Mushuk(Hayvon): # Mushuk sinfi
def ovoz(self):
return "Meowing" # Mushukning ovozi
# Funksiya, hayvon obyektini qabul qiladi va uning ovozini chiqaradi
def hayvon_ovozini_eshit(hayvon):
print(hayvon.ovoz())
# Obyektlar yaratish
it = It()
mushuk = Mushuk()
hayvon_ovozini_eshit(it) # Barking
hayvon_ovozini_eshit(mushuk) # Meowing
Izohlar:
hayvon_ovozini_eshitfunksiyasi har qandayHayvonsinfidan kelgan obyektni qabul qiladi va uningovozmetodini chaqiradi. Bu yerda polimorfizm ko'rinadi, chunki turli hayvonlar turli ovoz chiqaradi, lekin bir xil metoddan foydalaniladi.
Polimorfizmning Afzalliklari
- Kodning qayta ishlatilishi: Polimorfizm orqali bir xil metodni bir necha joyda ishlatish mumkin.
- Modullik: Dastur kodini modulli qilish va har bir modulni alohida sinflar bilan boshqarish imkonini beradi.
- Oson kengaytirish: Yangi sinflar qo'shilganda, mavjud kodni o'zgartirish shart emas.
Polimorfizm Haqida Qiziqarli Faktlar
- Polimorfizm OOPning asosiy tushunchalaridan biri bo’lib, u kodni sodda va tushunarli qiladi.
- OOP dasturlash tillarida (Java, C++, Python va h.k.z) polimorfizm juda muhim ahamiyatga ega.
- Dasturiy ta'minotda polimorfizm yordamida dasturchilar yangi xususiyatlarni oson qo'shishlari mumkin.
Xulosa
Bugun biz OOP (Obyektga Yo'naltirilgan Dasturlash) va polimorfizm tushunchasini ko'rib chiqdik. Polimorfizm yordamida turli sinflar bir xil metodlardan foydalanib, bir xil ishni bajarishi mumkin.
Savollar va Javoblar
- Polimorfizm nima?
- Polimorfizm — bu bir xil metodni turli sinflarda ishlatish qobiliyati.
- Metodlar polimorfizmi nima?
- Bir xil metod nomi turli sinflarda ishlatilishi.
- Python dasturlash tilida polimorfizm qanday amalga oshiriladi?
- Sinflar va metodlar yordamida.
- Polimorfizmning afzalliklari nimalar?
- Kodning qayta ishlatilishi, modullik va oson kengaytirish.