Dil bağlama - Language binding

Olarak programlama ve yazılım tasarımı , bağlayıcı bir bir uygulama programlama arayüzü sağlar (API) tutkal kodu özellikle izin vermek için yapılmış bir programlama dili yabancı kullanımı kitaplığı ya da işletim sistemi hizmeti (bu dil için doğal olmayan bir).

özellikleri

Bağlama genellikle bir şeyin diğerine eşlenmesi anlamına gelir. Bağlamında yazılım kütüphaneleri , bağlamaları vardır sarıcı kütüphaneler köprü iki o programlama dilleri , bir böylece kütüphane Bir dil için yazılı başka bir dilde kullanılabilir. Birçok yazılım kitaplığı, C veya C++ gibi sistem programlama dillerinde yazılmıştır . Bu tür kitaplıkları Java , Common Lisp , Scheme , Python veya Lua gibi başka bir dilden, genellikle daha yüksek düzeyden kullanmak için , o dilde kitaplığa bir bağlama oluşturulmalıdır ve muhtemelen dilin kodunun yeniden derlenmesini gerektirir . gereken değişiklik miktarı. Ancak, çoğu diller sunuyoruz yabancı işlevi arabirimi böyle Python'un gibi, ocaml 's ve Katıştırılabilir Common Lisp ' ler ve . ctypescffiuffi

Örneğin, Python bağlamaları, bir amaç için yazılmış mevcut bir C kitaplığı Python'dan kullanılacaksa kullanılır. Başka bir örnek, Subversion yazılım deposunalibsvn erişmek için bir API sağlamak için C ile yazılmış olandır . Subversion'a Java kodu içinden erişmek için, kurulmaya bağlı olan ve Java ile dili arasında bir köprü görevi gören , böylece işi yapmak için işlevleri çağıran bir API sağlayan kullanılabilir . libsvnjavahllibsvnlibsvnlibsvn

Kitaplık bağlamaları oluşturmanın başlıca nedenleri arasında , bir kitaplığın birkaç dilde yeniden uygulanmasını azaltmak için yazılımın yeniden kullanımı ve bazı yüksek düzeyli dillerde bazı algoritmaları verimli bir şekilde uygulamanın zorluğu yer alır .

Çalışma zamanı ortamı

Nesne modelleri

Sanal makineler

taşıma

Ayrıca bakınız

Referanslar

Dış bağlantılar