كثيرا ما يتساءل البعض حول الجدوى من تطبيق الكَبْسَلة في نمط البرمجة الكائنية، فيقول لماذا عليَّ أن أنشئ دوالَ أخذٍ وردٍ لكل خاصية عوض أن أجعل الخاصية ظاهرةً بحيث يمكن الوصول إليها مباشرة؟ وجوابا على هذا التساؤل البريء أقدّم هذه التدوينة المجرمة.
مصطلحات التدوينة
- الكبسلة: هي عملية إخفاء الخصائص لمنع الوصول المباشر إليها.
- دوال الأخذ والرد: هي الدوال التي يمكن عبرها الوصول إلى الخصائص المخفية.
- فصيلة: وحدة تحوي خصائص ودوال، يمكن إنشاء كائنات متعددة من نفس الفصيلة.
الفصائل الفاسقة
الفصائل الفاسقة هي التي لا تستخدم الكبسلة، وهي فاسقة لأنها:
- تسمح لك بالوصول إلى خصوصيتها دون صعوبة.
- لا تهتم لما أنت تنوي فعله.
- قد تبدو كاستجابة سريعة لرغباتك.
- يمكن استعمالها بطرق عديدة، بمعطيات مختلفة، لكن لا واحدة منها مضمونة.
- لا يمكن الوثوق بها.
- يجب اختبارها جيدا.
- تُحدِثُ فوضى عارمة على المدى البعيد.
وعليه فاحرص أيها المبرمج على ستر عورة الفصائل التي تصنع لكي لا نقول عنها "فاسقة".
لمن لا يعرف كيف يُطَبِّق الكبسلة في نجم، فإنها كما يلي:
توضيح
لمن لا يعرف كيف يُطَبِّق الكبسلة في نجم، فإنها كما يلي:
فصيلة إنسان ظاهر: نص اسم 'هذه خاصية غير مكبسلة' خفي: نص نسب 'هذه خاصية مكبسلة، ويمكن الوصول إليها من خلال دوال الأخذ والرد أدناه' ظاهر: خذ_نسب(نص ن) نسب = ن تم رد_نسب() يرد نص رد نسب تم تم
ليست هناك تعليقات:
إرسال تعليق