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 utajifunza jisni ya kujuwa aina ya data iliyotumika kwenye python
Soma Zaidi...Hapa utakwenda kujifunz amaana ya package, aina zake na jinsi ya kuandika package.
Soma Zaidi...Katika somo hili utakwend akujifunza ktengeneza model kwa ajili ya database table ya menu yetu.
Soma Zaidi...Katika somo hili utajifunza maana ya class, sheria za uandishi wake na mifano halisi
Soma Zaidi...Katika somo hili utakwend akujifunza jinsi ya kuandika function, kuweka parameter na kuitumia function
Soma Zaidi...Katika somo hili tutakwend akujifunza kuhusi Jinsi ya Kutumia JavaScript kwenye Fomu za Django
Soma Zaidi...Katika somo hili utakwenda kujfnza kuhusu string method nyinginezo. Katika somo lililopita tulijifunza kuhusu string indexing.
Soma Zaidi...Katika somo hili utakwend akujifunz amaana ya module, kazi zake, aina zake na jinsi ya kuandika modile
Soma Zaidi...Katika somo hili tutajifunza jinsi Django hutumia migrations kuunda na kubadilisha tables kwenye database kulingana na models tunazoandika. Tutapitia maana ya migration, hatua za kuitumia, umuhimu wake, misingi ya makemigrations na migrate, pamoja na mfano halisi kutoka kwenye project yetu ya pybongo (app: menu).
Soma Zaidi...Katika somo hili utakwend akujifunza maana ya object, na sheria za kuandika object.
Soma Zaidi...