Менеджер пакетов и менеджер зависимостей

Каковы различия?

Во многих местах они использовали взаимозаменяемые синонимы, но я думаю, что они разные. Какова ключевая разница вкратце?

Ответ 1

TLTR: Диспетчерпакетов используется для SYSTEM и Диспетчер зависимостей для PROJECT


Диспетчер пакетов - используется для настройки системы, т.е. для настройки среды разработки, и с помощью этих настроек вы можете создавать множество проектов.

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


ПРИМЕР: В мире PHP есть COMPOSER как менеджер зависимостей и PEAR как менеджер пакетов. При использовании composer все ваши настройки и расширения предназначены для одного проекта, в котором есть настройки для установки нового расширения и библиотеки для ядра php.

Ответ 2

На веб-сайте Composer есть отличное и простое объяснение:

Композитор не является менеджером пакетов в том же смысле, что и Yum или Apt. Да, он имеет дело с "пакетами" или библиотеками, но управляет ими на основе каждого проекта, устанавливая их в каталоге (например, поставщике) внутри вашего проекта. По умолчанию он не устанавливает ничего глобально. Таким образом, это менеджер зависимостей.