البرمجة كائنية التوجه 🏗️
OOP هي نمط برمجي ينظم الكود حول "كائنات" تحتوي على بيانات (خصائص) وسلوكيات (دوال). تخيّل أنك تصنع قالب (Class) ثم تنتج نسخاً (Objects) منه.
المفاهيم الأساسية
- Class: القالب أو المخطط
- Object: نسخة حقيقية من القالب
- __init__: دالة البناء — تُنفذ عند إنشاء كائن
- self: مرجع للكائن الحالي
- الوراثة (Inheritance): إنشاء class من class آخر
- تعدد الأشكال (Polymorphism): نفس الدالة بسلوك مختلف
تمرين
أنشئ Class باسم BankAccount يحتوي على: صاحب الحساب، الرصيد. مع دوال: إيداع، سحب (مع التحقق من الرصيد)، عرض الرصيد.
💡 تلميح: استخدم __init__ لتعريف الخصائص. في دالة السحب تحقق أن المبلغ لا يتجاوز الرصيد.
class BankAccount:
def __init__(self, owner, balance=0):
self.owner = owner
self.balance = balance
def deposit(self, amount):
self.balance += amount
print(f"✅ تم إيداع {amount}. الرصيد: {self.balance}")
def withdraw(self, amount):
if amount > self.balance:
print(f"❌ رصيد غير كافٍ! المتاح: {self.balance}")
else:
self.balance -= amount
print(f"✅ تم سحب {amount}. الرصيد: {self.balance}")
def show(self):
print(f"💰 حساب {self.owner}: {self.balance} ريال")
acc = BankAccount("أحمد", 1000)
acc.show()
acc.deposit(500)
acc.withdraw(200)
acc.withdraw(2000)
acc.show()