أساليب جزئية
تمكن الأساليب الجزئية المطورين لإدراج منطق مخصص في التعليمات البرمجية. بشكل عام، التعليمات البرمجية جزء من فئة إنشاء المصمم. يتم تعريف الأساليب الجزئية في فئة جزئية التي تم إنشاؤها من قبل منشئ التعليمات برمجية, ويمكن استخدامهم بشكل شائع لتوفير اعلام أن هناك شيء ما تم تغييره. يساعد ذلك المطور لتحديد سلوك مخصص كاستجابة للتغيير.
يحدد مصمم منشئ التعليمات البرمجية فقط توقيع الأسلوب و نداء واحد أو أكثر للأسلوب. ثم يمكن للمطورين توفير تطبيقات للأسلوب إذا أرادوا تخصيص سلوك التعليمات البرمجية المنشأة. عندما لا يتوفر تطبيق, يتم ازالت نداءات للأسلوب بواسطة المترجم مما يؤدي إلى عدم وجود حمل أداء إضافي.
التعريف
الـتعليمات البرمجية المنشأة تحدد تعريف الأسلوب الجزئيبوضع الكلمة الأساسية Partial في بداية خط توقيع.
Partial Private Sub QuantityChanged()
End Sub
يجب أن ينطبق على التعريف الشروط التالية:
يجب أن يكون الـأسلوب Sub، و ليس Function.
النص أسلوب يجب أن يكون أيسره فارغاً.
معدل الوصول يجب أن يكون Private.
التنفيذ
التطبيق يتكون بشكل أساسي من تعبئة في النص الأساسي من الأسلوب الجزئي. التطبيق عادةً في فئة جزئية منفصلة من التعريف, ويتم كتبتها بواسطة المطوّر الذي يريد توسيع التعليمات البرمجية المنشأة.
Private Sub QuantityChanged()
' Code for executing the desired action.
End Sub
المثال السابق يكرر التوقيع في التصريح تماماً ولكن التباينات ممكنة. وبشكل خاص، المعدّلات الأخرى يمكن إضافتها, مثل Overloads أو Overrides. معدل Overrides واحد فقط مسموح به. للحصول على أكثر معلومات حول معدّلات الأسلوب راجع عبارة Vsual Basic) Sub).
استخدم الأمرين
تقوم بنداء أسلوب جزئي كما تنادي أي أجراء Sub أخر. إذا تم تطبيق أسلوب، يتم تقييم الوسيطات و يتم تنفيذ النص الأساسي للأسلوب. ومع ذلك، تذكر أن تطبيق أسلوب جزئي اختياري. إذا لم يتم تطبيق الأسلوب, ليس هناك ثأثير عند ندائها, ولا يتم تقييم التعبيرات المرسله كوسيطات للأسلوب.
المثال
في ملف يسمى Product.Designer.vb, قم بتعريف فئة Product التي تحتوي على خاصية Quantity.
Partial Class Product
Private _Quantity As Integer
Property Quantity() As Integer
Get
Return _Quantity
End Get
Set(ByVal value As Integer)
_Quantity = value
QuantityChanged()
End Set
End Property
' Provide a signature for the partial method.
Partial Private Sub QuantityChanged()
End Sub
End Class
في ملف يسمى Product.vb ، قم بتوفر تطبيق ل QuantityChanged.
Partial Class Product
Private Sub QuantityChanged()
MsgBox("Quantity was changed to " & Me.Quantity)
End Sub
End Class
وأخيراً، قم بتعريف في أسلوب الرئيسي لمشروع مثيل Product و قم بتوفير قيمة أولية لـلخاصية Quantity الخاصة به.
Module Module1
Sub Main()
Dim product1 As New Product With {.Quantity = 100}
End Sub
End Module
يجب أن يظهر مربع رسالة يعرض هذه الرسالة:
Quantity was changed to 100
راجع أيضًا:
المرجع
المبادئ
Code Generation in LINQ to SQL
Adding Business Logic By Using Partial Methods (LINQ to SQL)