Katika somo hili utajifunza maana ya polymorphism na sheria za uandishi wake
Polymorphism ni mojawapo ya nguzo kuu za Object-Oriented Programming (OOP). Neno hili linatoka katika maneno ya Kigiriki "poly" (nyingi) na "morph" (umbo), likimaanisha kuwa kitu kimoja kinaweza kuwa na maumbo mengi. Katika Python, polymorphism inaruhusu methods, functions, au operators kufanya kazi tofauti kulingana na muktadha.
Method Polymorphism:
Hii inaruhusu methods zenye jina moja kutenda kazi tofauti kwenye class mbalimbali.
Operator Polymorphism:
Hii inaruhusu operator moja kama + kufanya kazi tofauti kulingana na aina za data.
Katika Python, class tofauti zinaweza kuwa na methods zenye jina moja lakini tabia tofauti.
class Bird:
def intro(self):
print("There are many types of birds.")
def flight(self):
print("Most birds can fly.")
class Sparrow(Bird):
def flight(self):
print("Sparrows can fly.")
class Ostrich(Bird):
def flight(self):
print("Ostriches cannot fly.")
# Objects
obj_bird = Bird()
obj_sparrow = Sparrow()
obj_ostrich = Ostrich()
obj_bird.intro()
obj_bird.flight()
obj_sparrow.intro()
obj_sparrow.flight()
obj_ostrich.intro()
obj_ostrich.flight()
Hapa, method flight() imebadilika kulingana na object inayoitwa, ingawa jina lake limebaki lilelile.
Operator moja kama + inaweza kutenda kazi tofauti kulingana na data inayoshughulikiwa.
# Integer addition
print(10 + 20) # Output: 30
# String concatenation
print("Hello" + " World") # Output: Hello World
Hii inaonyesha jinsi operator moja inaweza kubadilika kulingana na aina za data.
Unaweza kuwa na function moja inayofanya kazi kwa objects za class tofauti.
def make_sound(animal):
animal.sound()
class Dog:
def sound(self):
print("Woof! Woof!")
class Cat:
def sound(self):
print("Meow!")
# Objects
dog = Dog()
cat = Cat()
make_sound(dog)
make_sound(cat)
Hii inaonyesha jinsi function make_sound() inavyoweza kufanya kazi na objects tofauti (dog na cat) zinazoshiriki method ya jina moja sound().
Kubadilika: Inaruhusu code kuwa rahisi kubadilishwa na kutumiwa tena.
Urahisi: Inapunguza ugumu wa code kwa kuruhusu matumizi ya interface moja kwa objects tofauti.
Mwisho:
Katika somo linalofuata tutakwend akujifunz akuhusu inheritance
Jiunge nasi WhatsApp kupata update zetu
Umeionaje Makala hii.. ?
Share On:
Katika somo hili tutajifunza namna ya kusoma data kutoka kwenye database kupitia Django ORM, jinsi ya kuzipeleka kwenye view, na jinsi ya kuzionyesha kwenye HTML template.
Soma Zaidi...Katika somo hili utakwend akujifunz anamna ya kuwez akupata taarifa zinazohusu faili
Soma Zaidi...Katika somo hili tutakwenda kujifunza kuhusu string indexing. Kama tulivyojifunza kuhusu namba katika somo lililopita, basi hapa tutakwenda kucheza na string.
Soma Zaidi...Katika somo hili utakwend akujifunza matumizi ya for loop kwneye python
Soma Zaidi...Katika somo hili utakwenda kujfunza operator nyingine kama assignment operator logical, identity operator na membership operator.
Soma Zaidi...Katika somo hili uatkwenda kujifunz anamna ambavyo mtu anaweza kuingiza input kwneye system
Soma Zaidi...Ni nini maana ya django framework na inafanya kazi gani
Soma Zaidi...Katika somo hili tutakwend akujifunza kwa urefu zaidi kuhusu parameter ambazo hutumika kwenye functions
Soma Zaidi...Katika somo hili tutajifunza jinsi ya kutumia Django ORM kufanya mahesabu mbalimbali kama Sum, Avg, Count, Max, Min, pamoja na kupunguza idadi ya items zinazoonekana kwenye dashboard (LIMIT). Pia tutajifunza namna ya kutengeneza βdifferenceβ kati ya thamani kubwa na ndogo bila kubadilisha functions zozote ulizokwisha ziandika.
Soma Zaidi...Katika somo hili utakwenda kujifunza jinsi ya kubadili ukurasa wa landing page wa Django na kuweka ukurasa tunaoutaka sisi.
Soma Zaidi...