Dinamik Bağlanma nedir?



Olarak bilgisayar biliminin , adı bağlanma kodu veya veri bölümüne bir fonksiyon veya değişken adı gibi bir kimlik ilişki vardır. En yaygın senaryoda, statik bağlama, bu eşleme derleme zamanında bilinir. Dinamik bağlanmada, bir işlevle eşlenen nesne, faizsiz KOSGEB kredisiderleme zamanında bilinmez ve yalnızca program çalışma süresi boyunca belirlenebilir. Bu nedenle, geç bağlama da denir . Statik bağlama ile mevcut olmayan esneklik sunsa da, statik bağlamadan daha fazla performans maliyeti gerektirir.
Dinamik bağlanma, nesne yönelimli programlamanın bir parçası olan polimorfizm ile yakından ilişkilidir. Polimorfizm, aynı metodun farklı yollarla uygulanmasına izin verir. Kod, derleme zamanında kesin yöntem belirlenemeyen şekilde yazılmazsa, dinamik ciltleme kullanılmalıdır.
Örneğin, bir "Şekil" sınıfının "GetArea" adlı bir yöntemi olabilir, çünkü her şeklin bir alanı vardır. Bununla birlikte, "Şekil" in bir "Çember" alt sınıfı "GetArea" yi bir "Kare" alt sınıftan farklı bir şekilde uygular. Bu nedenle, "Shape" türünde yeni bir nesne oluşturulduysa ve kod, bu şekildeki "GetArea" yöntemini çağırırsa, derleyicinin şeklin daire mi yoksa kare mi olduğunu bilmesinin hiçbir yolu yoktur. Hangi GetArea yönteminin çağrılacağını bilmez. Bu, dinamik bağlama örneğidir, çünkü doğru GetArea yöntemi yalnızca çalışma zamanında haritalandırılır, program, nesnenin ne tür bir şekil olduğunu bilir.
Dinamik bağlanma, hangi spesifik uygulamanın kullanılacağını bilmeden soyut yöntemler kullanmanın esnekliğine izin verir. "Şekil" örneğinde, bu mantığı açıkça kullanarak dinamik bağlamadan kaçınmak için kod yazılabilir: Şekil bir daire ise, o zaman dairenin GetArea yöntemini çağırın; Başka bir deyişle, şekil kare ise, kareler için belirli bir GetArea yöntemini çağırın. Dinamik bağlamanın yararı, kodun alternatiften daha temiz ve daha kalıcı olmasıdır. kadınlara KOSGEB desteğiStatik bağlama örneğinde, kod çoğaltma vardır ve yeni bir şekil türü eklendiğinde kod güncellenmelidir.
Downsides, performans ve güvenlik vardır. Statik ciltlemede, derleyici tam olarak hangi kodun kullanılacağını bilir ve daha verimli çalışmak için kodu optimize edebilir. Tip güvenlik sorun olabilir, çünkü bazı dinamik bağlama uygulamalarında, yöntemi desteklemeyen bir nesne üzerinde bir yöntem çağrılabilir. Örneğin, "GetArea" yöntemi, bir şekil olmayan ve bu nedenle, bir çalışma zamanı hatasıyla sonuçlanabilecek "GetArea" yöntemine sahip olmayan bir nesne üzerinde çağrılabilir . Statik bağlanma, bir derleme hatası oluşturarak bu senaryoyu engeller.

Yorumlar

Bu blogdaki popüler yayınlar

Sabit Sürücüyü Nasıl Silerim?

En İyi Ekran Yonga Kümesini Nasıl Seçerim?

PC Kartı nedir?