Skip to main content

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, ovoz metodi.
  • 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_eshit funksiyasi har qanday Hayvon sinfidan kelgan obyektni qabul qiladi va uning ovoz metodini chaqiradi. Bu yerda polimorfizm ko'rinadi, chunki turli hayvonlar turli ovoz chiqaradi, lekin bir xil metoddan foydalaniladi.

Polimorfizmning Afzalliklari

  1. Kodning qayta ishlatilishi: Polimorfizm orqali bir xil metodni bir necha joyda ishlatish mumkin.
  2. Modullik: Dastur kodini modulli qilish va har bir modulni alohida sinflar bilan boshqarish imkonini beradi.
  3. 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

  1. Polimorfizm nima?
    • Polimorfizm — bu bir xil metodni turli sinflarda ishlatish qobiliyati.
  2. Metodlar polimorfizmi nima?
    • Bir xil metod nomi turli sinflarda ishlatilishi.
  3. Python dasturlash tilida polimorfizm qanday amalga oshiriladi?
    • Sinflar va metodlar yordamida.
  4. Polimorfizmning afzalliklari nimalar?
    • Kodning qayta ishlatilishi, modullik va oson kengaytirish.