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.. ?
Katika somo hili utakwend akujifunza jinsi ya kupokea na kuchakata fomu
Soma Zaidi...Katika somo hili utakwenda kujfnza kuhusu string method nyinginezo. Katika somo lililopita tulijifunza kuhusu string indexing.
Soma Zaidi...Katika somo hili utajifunza maana ya encapsulation na sheria za uandishi wake
Soma Zaidi...Katika somo hili utakwend akujifunza ktengeneza model kwa ajili ya database table ya menu yetu.
Soma Zaidi...Katika somo hili tutajifunza jinsi ya kuunda dashboard rahisi ndani ya Django ambayo itaruhusu mtumiaji kuongeza, kusoma, kuhariri na kufuta taarifa za MenuItem bila kutumia Django built-in admin, bali kwa kutumia HTML templates na views tulizotengeneza sisi wenyewe.
Soma Zaidi...Katika somo hili utakwenda kujifunza kutengeneza htmk form pamoja na kuituma.
Soma Zaidi...Katika somo hili utakwenda kujfunza operator nyingine kama assignment operator logical, identity operator na membership operator.
Soma Zaidi...Hapa utajifunza maana ya library, kazi zake aina zake na jinsi ya ku install lirary
Soma Zaidi...Katika maeneo ya development, tunahitaji kutuma email mara nyingi kwa madhumuni ya: Kujaribu mfumo wa OTP Password reset System notifications Activation codes Lakini mara nyingi hatutaki emails ziondoke kwenda kwa watu halisi wakati bado tupo kwenye majaribio.
Soma Zaidi...