مقدمة في البرمجة الكائنية (OOP)

Amine
15/09/2024

البرمجة الكائنية (Object-Oriented Programming) هي نمط من أنماط البرمجة يستخدم الكائنات (objects) والفئات (classes) لتنظيم الكود بطريقة أكثر تنظيمًا ووحداتية. في البرمجة الكائنية، تقوم بإنشاء “مخططات” للكائنات باستخدام الفئات، ثم تنشئ نسخًا من هذه الفئات تُسمى الكائنات.

إنشاء فئة

الفئة هي بمثابة مخطط لإنشاء الكائنات. تُعرف الفئة الخصائص (المتغيرات) والسلوكيات (الدوال) التي ستكون لدى الكائنات التي تُنشأ من هذه الفئة. إليك كيفية تعريف فئة بسيطة في بايثون:

class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def bark(self):
        print(f"{self.name} says woof!")

# Creating an instance (object) of the Dog class
my_dog = Dog("Buddy", 3)
print(my_dog.name)  # Output: Buddy
print(my_dog.age)   # Output: 3
my_dog.bark()       # Output: Buddy says woof!

class Dog: هذا يُعرّف فئة جديدة تُسمى Dog.
__init__: هذه دالة خاصة تُسمى المُنشئ (constructor) وتُهيئ الكائنات الجديدة. تُعد الإعداد الأولي لحالة الكائن.
self: هذا يشير إلى النسخة الحالية من الفئة ويُستخدم للوصول إلى المتغيرات والدوال داخل الفئة.
name وage: هذه هي المتغيرات في فئة Dog.
bark: هذه دالة تُعرف سلوكًا لفئة Dog.

إنشاء واستخدام الكائنات

بمجرد أن يكون لديك فئة، يمكنك إنشاء كائنات (نسخ من الفئة) عن طريق استدعاء الفئة كما لو كانت دالة:

dog1 = Dog("Buddy", 3)
dog2 = Dog("Lucy", 5)

dog1.bark()  # Output: Buddy says woof!
dog2.bark()  # Output: Lucy says woof!

تمارين

التمرين 1

قم بإنشاء فئة تُسمى Car بمتغيرات للماركة (make) والطراز (model) والسنة (year). أضف دالة تُسمى display_info تقوم بطباعة تفاصيل السيارة.

class Car:
    def __init__(self, make, model, year):
        self.make = make
        self.model = model
        self.year = year

    def display_info(self):
        print(f"Car: {self.year} {self.make} {self.model}")

car1 = Car("Toyota", "Camry", 2020)
car1.display_info()  # Output: Car: 2020 Toyota Camry

التمرين 2

قم بإنشاء فئة تُسمى Book بمتغيرات للعنوان (title) والمؤلف (author) وعدد الصفحات (pages). أضف دالة تُسمى read تطبع “Reading [title] by [author]”.

class Book:
    def __init__(self, title, author, pages):
        self.title = title
        self.author = author
        self.pages = pages

    def read(self):
        print(f"Reading {self.title} by {self.author}")

book1 = Book("1984", "George Orwell", 328)
book1.read()  # Output: Reading 1984 by George Orwell

التمرين 3

قم بتمديد فئة Dog من المثال بإضافة دالة تُسمى birthday التي تزيد عمر الكلب بمقدار واحد وتطبع رسالة.

class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def bark(self):
        print(f"{self.name} says woof!")

    def birthday(self):
        self.age += 1
        print(f"Happy Birthday {self.name}! You are now {self.age} years old.")

my_dog = Dog("Buddy", 3)
my_dog.birthday()  # Output: Happy Birthday Buddy! You are now 4 years old.

رائع! لقد قمت الآن بأول خطواتك في البرمجة الكائنية، وتعلمت كيفية تعريف الفئات وإنشاء الكائنات وإضافة الدوال إليها. البرمجة الكائنية هي طريقة قوية لتنظيم وترتيب الكود الخاص بك، خاصة مع ازدياد تعقيد برامجك.

التعليقات

اترك تعليقاً