Erken ve Geç Bağlama (Visual Basic)

Visual Basic derleyici bir nesne değişkenine bir nesne atandığında çağrılan bir işlem gerçekleştirir binding . Bir nesne, belirli bir nesne türü olarak belirtilen bir değişkene atandığında erken bağlanır . Erken bağlantılı nesneler, derleyicinin bellek ayırmasını ve uygulama yürütmeden önce diğer iyileştirmeler gerçekleştirmesini sağlar. Örneğin, aşağıdaki kod parçası türünde bir değişken bildirir 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, Belirli bir nesne türü olduğundan, öğesine atanan örnek erken bir şekilde FS bağlanır.

Buna karşılık, bir nesne, türü olarak belirtilen bir değişkene atandığında geç bağlanır Object . Bu türdeki nesneler herhangi bir nesneye başvuruları tutabilir, ancak erken bağlantılı nesnelerin avantajlarından birçoğuna sahip olabilir. Örneğin, aşağıdaki kod parçası, işlev tarafından döndürülen bir nesneyi tutacak bir nesne değişkeni bildirir 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

Erken bağlamanın avantajları

Derleyicinin daha verimli uygulamalar sunan önemli iyileştirmeler yapmasına izin verdiklerinden, mümkün olduğunda erken bağlanan nesneleri kullanmanız gerekir. Erken bağlantılı nesneler, geç bağlantılı nesnelerden önemli ölçüde daha hızlıdır ve tam olarak hangi tür nesnelerin kullanıldığını belirterek kodunuzun okunmasını ve bakımını daha kolay hale getirir. erken bağlamanın bir diğer avantajı da, kodu düzenlerken Visual Studio tümleşik geliştirme ortamı (ıde) tam olarak ne tür bir nesne olduğunu belirleyebildiğinden, otomatik kod tamamlama ve dinamik yardım gibi yararlı özelliklerden yararlanmasıdır. Erken bağlama, bir program derlendiğinde derleyicinin hata raporlenmesini sağladığından, çalışma zamanı hatalarının sayısını ve önem derecesini azaltır.

Not

Geç bağlama yalnızca, olarak belirtilen tür üyelerine erişmek için kullanılabilir Public . Friend Protected Friend Bir çalışma zamanı hatası olarak belirtilen üyelere erişme.

Ayrıca bkz.