← Назад в словарь

Dependency (Зависимость)

Dependency (Зависимость) (Dependency) — зависимость

Суть в одном предложении

Зависимость — связь «проект или класс нуждается в другом коде»: внешняя библиотека (пакет) или другой класс в том же проекте; управление зависимостями упрощают менеджер пакетов и автозагрузка.

Краткое определение

Dependency — потребность модуля или класса в другом коде. Внешние зависимости (библиотеки) задаются в composer.json и устанавливаются Composer. Внутренние (другие классы проекта) подгружаются по PSR-4 без ручных require.

Оригинал и перевод

  • Язык: английский
  • Оригинал: Dependency
  • Буквальный перевод: зависимость

Синонимы и варианты написания

  • Dependency, Dependencies
  • Зависимость, зависимости проекта

Происхождение

Общепринятый термин в разработке и архитектуре. «Управление зависимостями» — одна из задач менеджера пакетов и автозагрузки.

Где используется

  • composer.json (require, require-dev)
  • Код: класс A использует класс B — B зависимость A
  • CI/CD: установка зависимостей перед сборкой (composer install)

Когда это важно

При росте проекта ручное подключение каждой зависимости через require приводит к ошибкам и хаосу. Автозагрузка и Composer делают зависимости явными (описание в composer.json и use в коде) и автоматизируют подключение.

Подробное объяснение

Внешние зависимости: пакеты из Packagist, версии в composer.json. Внутренние: класс UserService зависит от Connection — в коде это выражается через use и тип в конструкторе; файл с Connection подгружается автозагрузчиком по namespace. Циклические зависимости (A → B → A) усложняют поддержку и могут вызывать ошибки.

Аналоги и связанные термины

  • Composer — управляет внешними зависимостями в PHP
  • Автозагрузка — подгружает классы-зависимости по имени
  • Require/include — ручное подключение зависимости (антипаттерн при большом числе классов)
  • Точка входа — место, где подключается автозагрузчик для разрешения зависимостей

Пример использования

«Добавили зависимость от библиотеки в composer.json, выполнили composer install — классы подхватываются автозагрузкой.»

Смотри также