Связующий код (англ. glue code — склеивающий код) — программный код, который служит исключительно для «склеивания» разных частей кода, и при этом не реализует сам по себе никакую иную прикладную функцию. Связующий код может также рассматриваться как шаблон проектирования.

Такой код часто используется для взаимодействия с готовыми библиотеками или программами, как в интерфейсах внешних функций (FFI) наподобие JNI или SWIG, так и для объектно-реляционного отображения объектов языка программирования с записями в базы данных, для интеграции двух или более программных продуктов[1].

Веб-фреймворки облегчают объединение компонентов различных типов, а также привязку этого фронтенда к какому-либо бэкенду.[1]

Самой наглядной абстракцией для «склейки» компонентов является конвейерная передача данных, часто используемая в Unix (|). Она — мощный и стандартный инструмент для объединения узкоспециализированных утилит.[1]

Количество кода для связывания систем увеличивается квадратично от количества связываемых элементов. Проблема связывания различных систем стоит в центре проблем разработки программного обеспечения. Системы становятся все более сложными и требуют интеграции. Поддержание совместимости с устаревшими системами делает связующий код своеобразным техническим долгом, увеличивающим нагрузку на сопровождение программного обеспечения. Осознанный подход к написанию кода, аккуратное использование и своевременное удаление, тщательное проектирование интерфейсов и соблюдение стандартов позволяет проблеме оставаться разрастания программного кода управляемой. В конечном счёте, связуюший код — суть программирования, так как оно сводится к «склеиванию» вещей, будь то микросервисы или программные библиотеки. Это не «потери», а важная часть разработки программного обеспечения.[1]

Примечания

править
  1. 1 2 3 4 Mike Loukides. Thinking About Glue The code that holds our systems together. O’Reilly (13 июля 2021). Дата обращения: 9 июля 2023. Архивировано 9 июля 2023 года.

Литература

править
  • Nathaniel Pryce. Glue Code. Scripting. Department of Computing, Imperial College London. Архивировано из оригинала 31 марта 2017 года.

Ссылки

править