Katika somo hili utakwend akujifunz akuhusu nadharia ya data abstraction na kazi zake kwenye OOP
Data Abstraction ni mchakato wa kuficha maelezo ya utekelezaji wa data huku ukitoa interface rahisi kwa mtumiaji. Hii inaruhusu kuangazia kile ambacho object inafanya badala ya jinsi inavyofanya kazi.
Abstraction inalenga kuhifadhi maelezo ya ndani ya code yasionekane moja kwa moja kwa mtumiaji.
Hii hufanikishwa kwa kutumia abstract classes na methods ambazo hazina utekelezaji kamili katika class ya msingi (base class).
Abstract Class:
Hii ni class inayojumuisha angalau abstract method moja.
Abstract class haiwezi kuanzishwa moja kwa moja, yaani huwezi kuunda object ya abstract class.
Abstract Method:
Hii ni method isiyo na utekelezaji katika class ya msingi.
Inapaswa kufafanuliwa kwenye class zinazorithi (subclasses).
Module abc:
Python hutumia module ya abc (Abstract Base Classes) kuunda classes za abstract na methods zake.
Kabla ya kuziona hatuwa hizo kwanz anakuletea mfano ambao tutakwenda kuufanyia kazi
from abc import ABC, abstractmethod
# Abstract Class
class Shape(ABC):
@abstractmethod
def area(self):
pass
@abstractmethod
def perimeter(self):
pass
# Concrete Class
class Rectangle(Shape):
def __init__(self, length, width):
self.length = length
self.width = width
def area(self):
return self.length * self.width
def perimeter(self):
return 2 * (self.length + self.width)
# Object creation
rect = Rectangle(5, 3)
print(f"Area: {rect.area()}") # Output: Area: 15
print(f"Perimeter: {rect.perimeter()}") # Output: Perimeter: 16
class Shape(ABC): @abstractmethod def area(self): pass
@abstractmethod def perimeter(self): pass
class Rectangle(Shape): def __init__(self, length, width): self.length = length self.width = width
def area(self): return self.length * self.width
def perimeter(self): return 2 * (self.length + self.width)
(__init__) ili kuweka thamani za length na width.rect = Rectangle(5, 3)print(f"Area: {rect.area()}") # Output: Area: 15print(f"Perimeter: {rect.perimeter()}") # Output: Perimeter: 16
Jiunge nasi WhatsApp kupata update zetu
Umeionaje Makala hii.. ?
Katika somo hili utakwend akujifunza jinsi ya kuandika function, kuweka parameter na kuitumia function
Soma Zaidi...Katika somo hili uatajifunza jinsi gani unaweza kutumia view kma logic kuuma data kwenye template
Soma Zaidi...Katika somo hili utajifunza maana ya polymorphism na sheria za uandishi wake
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 utajifunza Jinsi ya Kuunda Simple Navigation Menu Katika Django kwa kutumia template
Soma Zaidi...Katika somo hili utakwenda kujifunza kuhusu number method yaani function zinazofanya kazi kwenye namba.
Soma Zaidi...Katika somo hili utajifunza maana ya variable, na sheria za kutengeneza variable kwenye python. Pia utajifunza maneno ambayo hayafai kutumiwa kama variable
Soma Zaidi...Katika somo hili utakwenda kujifunza kuhusu operator. Hasa hapa tutakwend akujifunz akuhusu comparison operaor.
Soma Zaidi...Katika somo hili utakwend akujifunz anamna ya kuwez akupata taarifa zinazohusu faili
Soma Zaidi...Katika somo hili tutajifunza njia mbili muhimu za kuongeza data kwenye database katika project yetu ya pybongo (app: menu). Njia hizi ni: Kutumia Django Admin Kutumia Django Shell Utafahamu pia jinsi ya kusajili models kwenye admin, jinsi ya kuingia admin panel, na namna ya kutengeneza entries mpya za MenuItem.
Soma Zaidi...