التغليف Encapsulation في Python | حماية البيانات داخل الكلاسات
10:00 دقائق
مجاني
شرح التغليف في Python وكيفية التحكم في الوصول للمتغيرات والدوال داخل الكلاسات
Encapsulation يعني “تغليف” البيانات داخل الكلاس ومنع العبث بها مباشرة، وإجبار المستخدم يستعمل Methods آمنة.
الأسلوب الشائع: underscore
class Account:
def __init__(self, balance):
self._balance = balance # للترميز أن هذا داخلي
def get_balance(self):
return self._balance
الحماية الأقوى: __ (name mangling)
class Account:
def __init__(self, balance):
self.__balance = balance
def deposit(self, amount):
if amount > 0:
self.__balance += amount
def get_balance(self):
return self.__balance
لماذا هذا مهم؟
- تمنع حالات غير منطقية (رصيد سلبي بدون سبب)
- تجعل الكود أسهل للصيانة
- تفرض استخدام واجهة واضحة Methods
تمرين
- كلاس User فيه __password
- Method لتغيير كلمة المرور بشرط طولها ≥ 8
ماذا بعد هذا الدرس؟
الدرس القادم: CSV و JSON
سنخزن ونقرأ بيانات حقيقية من ملفات.