Языковая привязка

редактировать
Программная библиотека, которая позволяет использовать другую библиотеку, написанную на другом языке программирования

В программировании и разработке программного обеспечения, a привязка - это интерфейс прикладного программирования (API), который предоставляет связующий код, специально созданный для того, чтобы язык программирования мог использовать чужой библиотека или служба операционной системы (та, которая не является родной для этого языка).

Содержание

  • 1 Характеристики
  • 2 Среда выполнения
    • 2.1 Объектные модели
    • 2.2 Виртуальные машины
  • 3 Перенос
  • 4 См. Также
  • 5 Ссылки
  • 6 Внешние ссылки

Характеристики

Связывание обычно относится к отображению одного объекта в другой. В контексте программных библиотек привязки - это библиотеки-оболочки, которые соединяют два языка программирования, так что библиотеку, написанную для одного языка, можно использовать на другом языке. Многие библиотеки программного обеспечения написаны на языках системного программирования, таких как C или C ++. Чтобы использовать такие библиотеки с другого языка, обычно более высокого уровня, например Java, Common Lisp, Scheme, Python или Lua, привязка к библиотеке должна быть создана на этом языке, что может потребовать перекомпиляции кода языка, в зависимости от количества необходимых изменений. Однако большинство языков предлагают интерфейс внешних функций, например, Python и OCaml ctypesи Embeddable Common Lisp cffiи uffi.

Например, привязки Python используются, когда существующая библиотека C, написанная для какой-то цели, должна использоваться из Python. Другой пример - libsvn, который написан на C, чтобы предоставить API для доступа к программному репозиторию Subversion . Для доступа к Subversion из кода Java можно использовать libsvnjavahl, который зависит от установленного libsvnи действует как мост между языком Java и libsvn, таким образом предоставление API, который вызывает функции из libsvnдля выполнения работы.

Основные мотивы для создания привязок библиотек включают повторное использование программного обеспечения, чтобы уменьшить повторную реализацию библиотеки на нескольких языках, и сложность эффективной реализации некоторых алгоритмов на некоторых языках высокого уровня.

Среда выполнения

Объектные модели

Виртуальные машины

Перенос

См. Также

  • icon Портал компьютерного программирования

Ссылки

Внешние ссылки

Последняя правка сделана 2021-05-26 13:09:10
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте