Skip to main content

Что такое поздняя привязка?

Позднее связывание - это термин компьютерного программирования, который описывает, когда программа впервые обращается к части своего кода. Большинство программ пишутся в виде текста, а затем компилируются в работающую программу. Во время этого процесса компилятор проверяет все соединения в программе, чтобы убедиться, что они присутствуют и в основном точны. При позднем связывании компилятор не имеет доступа к некоторым частям программы, поэтому они остаются в стороне во время компиляции. Когда программа запускается, код добавляется по мере необходимости.

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

В программе, использующей позднюю привязку, часть программы отсутствует. Компилятору дано указание игнорировать эту часть и продолжать работу. Иногда вызовы пишутся таким образом, что компилятор даже не осознает, что они там есть. Это в основном сделает некоторые разделы программы отделенными от основной части.

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

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

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