الربط في وقت التشغيل و الربط مبكر

برنامج التحويل البرمجي Visual Basic ينفذ عملية تسمى binding عند تعيين كائن إلى متغير كائن. يكون الكائن ربط مبكر عندما يتم تعيينه إلى متغير معرف ليكون من نوع كائن معين. تسمح الكائنات المرتبطة بشكل مبكر للمحول البرمجي بتخصيص ذاكرة وتنفيذ تحسينات أخرى قبل أن تنفيذ أحد التطبيقات. على سبيل المثال، جزء التعليمات البرمجية التالي يعرف متغيّر ليكون من نوع FileStream:

'  Create a variable to hold a new object.
Dim FS As System.IO.FileStream
' Assign a new object to the variable.
FS = New System.IO.FileStream("C:\tmp.txt", 
    System.IO.FileMode.Open)

لأن FileStream هو نوع كائن معين، المثيل المعين إلى FS هو مرتبط بشكل مبكر.

وعلى النقيض، يكون الكائن مرتبط في وقت التشغيل عندما يتم تعيينه إلى متغير معرف ليكون من نوع Object. يمكن للكائنات من هذا النوع تقييد مراجع إلى أي كائن ولكن تفتقر للعديد من ميزات الكائنات المرتبطة بشكل مبكر. على سبيل المثال، يقوم جزء التعليمات البرمجية التالي بتعريف متغير كائن لتقييد كائن تمت إعادته بواسطة دالة "CreateObject:

' To use this example, you must have Microsoft Excel installed on your computer.
' Compile with Option Strict Off to allow late binding.
Sub TestLateBinding()
    Dim xlApp As Object
    Dim xlBook As Object
    Dim xlSheet As Object
    xlApp = CreateObject("Excel.Application")
    ' Late bind an instance of an Excel workbook.
    xlBook = xlApp.Workbooks.Add
    ' Late bind an instance of an Excel worksheet.
    xlSheet = xlBook.Worksheets(1)
    xlSheet.Activate()
    ' Show the application.
    xlSheet.Application.Visible = True
    ' Place some text in the second row of the sheet.
    xlSheet.Cells(2, 2) = "This is column B row 2"
End Sub

الميزات الحسنة للربط المبكر

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

ملاحظة

يمكن استخدام الربط في وقت التشغيل للوصول إلى نوع الأعضاء التي تم تعريفها كـ Public. الوصول إلى الأعضاء المعرفة كـ Friend أو Protected Friend ينتج خطأ وقت التشغيل.

راجع أيضًا:

المرجع

نوع البيانات كائن

CreateObject

المبادئ

مدة بقاء الكائن: كيفية إنشاء و إتلاف الكائنات