صديق وصديق محمي في VB.NET

click fraud protection

تحدد معدِّلات الوصول (تسمى أيضًا قواعد تحديد النطاق) الرمز الذي يمكنه الوصول إلى عنصر — أي الرمز الذي لديه إذن بقراءته أو الكتابة إليه. في الإصدارات السابقة من Visual Basic ، كانت هناك ثلاثة أنواع من الفئات. وقد تم نقلها إلى .NET. في كل من هذه ، يسمح .NET بالوصول فقط إلى التعليمات البرمجية:

  • خاص - داخل نفس الوحدة أو الفصل أو الهيكل.
  • صديق - داخل نفس التجمع.
  • عام - في أي مكان في نفس المشروع ، من المشاريع الأخرى التي تشير إلى المشروع ، ومن أي تجميع تم بناؤه من المشروع. وبعبارة أخرى ، أي رمز يمكن العثور عليه.

VB.NET أضافت أيضًا واحدة ونصف جديدة.

  • محمي
  • صديق محمي

"النصف" لأن الصديق المحمي هو مزيج من الفئة المحمية الجديدة وفئة الصديق القديم.

تعد أدوات تعديل صديق المحمية والمحمية ضرورية لأن VB.NET ينفذ متطلبات OOP الأخيرة التي كانت مفقودة: ميراث.

قبل استخدام VB.NET ، كان مبرمجو C ++ الفائقون والمزدحمون و Java يسيئون إلى VB لأنه ، وفقًا لهم ، "لم يكن موجهًا بشكل كامل إلى الكائنات". لماذا ا؟ افتقرت الإصدارات السابقة إلى الميراث. يسمح الوراثة للكائنات بمشاركة واجهاتها و / أو تنفيذها في تسلسل هرمي. وبعبارة أخرى ، فإن الميراث يجعل من الممكن لكائن برنامج واحد أن يأخذ جميع أساليب وخصائص كائن آخر.

instagram viewer

غالبًا ما تسمى هذه العلاقة "هي-أ".

  • الشاحنة هي مركبة.
  • شكل مربع هو شكل.
  • كلب "الثدييات".

والفكرة هي أن الطرق والخصائص الأكثر استخدامًا وواسعة النطاق يتم تعريفها في فئات "رئيسية" ويتم جعلها أكثر تحديدًا في فئات "تابعة" (غالبًا ما تسمى الفئات الفرعية). "الثدييات" هو وصف أكثر عمومية من "الكلب". الحيتان من الثدييات.

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

هذه الإمكانية الجديدة للميراث تتطلب قواعد جديدة. إذا كان الفصل الجديد يستند إلى فصل قديم ، فإن Protected هو مُعدِّل وصول يعكس هذه العلاقة. يمكن الوصول إلى التعليمات البرمجية المحمية فقط من داخل نفس الفئة ، أو من فئة مشتقة من هذه الفئة. لا تريد تعيين مفاتيح بطاقة باب الموظف لأي شخص باستثناء الموظفين.

كما لوحظ ، فإن الصديق المحمي هو مزيج من وصول كل من الصديق والمحمي. يمكن الوصول إلى عناصر التعليمات البرمجية إما من الفئات المشتقة أو من داخل التجميع نفسه أو كليهما. يمكن استخدام الصديق المحمي لإنشاء مكتبات من الفئات حيث أن التعليمات البرمجية التي تصل إلى التعليمات البرمجية الخاصة بك يجب أن تكون فقط في نفس التجميع.

ولكن لدى Friend أيضًا هذا الوصول ، فلماذا تستخدم الصديق المحمي؟ والسبب هو أنه يمكن استخدام Friend في ملف Source ، مساحة الاسم، واجهه المستخدم، الوحدة أو الفصل الدراسي أو الهيكل. ولكن لا يمكن استخدام Protected Friend إلا في الفصل الدراسي. الصديق المحمي هو ما تحتاجه لبناء مكتبات الكائنات الخاصة بك. الصديق هو فقط لمواقف التعليمات البرمجية الصعبة حيث يلزم حق الوصول الواسع للتجميع.

instagram story viewer