التغليف 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

سنخزن ونقرأ بيانات حقيقية من ملفات.