Package Manager vs Dependency Manager

Erlan picture Erlan · Dec 4, 2014 · Viewed 9.4k times · Source

What are the differences?

In many places they used interchangeably as synonyms but I think they are different. What is the key difference in short?

Answer

Erlan picture Erlan · Dec 4, 2014

TLTR: Package Manager is used for SYSTEM and Dependency Manager for PROJECT


Package Manager - is used to configure system, ie to setup your development environment and with these settings you can build many projects.

Dependency Manager - Is specific to project. You manage all dependencies for a single project and those dependencies are going to be saved on your project. When you start another project you should manage your dependencies again.


EXAMPLE: In PHP world there is COMPOSER as dependency manager and PEAR as package manager. When using composer all your settings and extensions are for single project where pear settings to setup new extension and library to php core.