عام/محمي/خاص: خاصية زائدة في البرمجة الشيئية؟

2025-06-19

تتناول هذه المقالة ضرورة مُعدِّلات الوصول (عام، محمي، خاص) في البرمجة الشيئية. يجادل الكاتب بأنّه يمكن تحقيق نفس الوظائف من خلال الجمع بين الواجهات والوراثة، دون الحاجة إلى آلية إضافية. قد يكون وجود مُعدِّلات الوصول ناتجًا عن إغفال في تصميم لغة سيمولا، مما أدى إلى وظائف زائدة. يقترح الكاتب، من أجل الحصول على رمز أنظف، تجنب استخدام مُعدِّلات الوصول والدعوة إلى التركيب بدلاً من الوراثة.

اقرأ المزيد

الوراثة: اختراق أداء عرضي

2025-05-08

لم تخترع سيمولا الوراثة من أجل إعادة استخدام التعليمات البرمجية أو قابلية التوسيع، بل لحل المشكلات المتعلقة بآلية جمع القمامة البسيطة والقوائم التطفلية الخاصة بها. كانت آلية جمع القمامة في سيمولا بسيطة للغاية لدرجة أنها لم تستطع التعامل مع المؤشرات إلى متغيرات المكدس؛ لتجنب التعطل، تم حظر العديد من طرق تمرير المعلمات، مما حد من القدرة التعبيرية. لاستخدام القوائم التطفلية بكفاءة، اخترعت سيمولا "البادئة" (الوراثة)، مما يسمح للكائنات باحتواء عقد القوائم مباشرة، وتجنب تخصيص الذاكرة الإضافية. لذلك، كانت الوراثة في البداية تحسينًا للأداء، وليست حجر زاوية في البرمجة كائنية التوجه.

اقرأ المزيد
التطوير سيمولا