有人能向我解释 NPM
, Bower
, 和 Composer
之间的区别吗?
它们都是包管理器 - 对吗?
但是每个应该在什么时候使用呢?
此外,每个似乎都有一个附带的 json 文件,这个文件是否存储了您需要的所有软件包,以便可以通过命令行安装?为什么需要这个文件?
有人能向我解释 NPM
, Bower
, 和 Composer
之间的区别吗?
它们都是包管理器 - 对吗?
但是每个应该在什么时候使用呢?
此外,每个似乎都有一个附带的 json 文件,这个文件是否存储了您需要的所有软件包,以便可以通过命令行安装?为什么需要这个文件?
Bower
已被弃用,不应再用于新项目。在很大程度上,它已被纳入到Node依赖管理中(从他们的网站上获知:“虽然Bower仍在维护,但我们建议使用Yarn和Webpack或Parcel进行前端项目开发”)。Yarn
出现了,作为一个更好的npm
(修复了npm
的一些缺点),如果您正在进行前端或Node开发,则应该使用Yarn
,因为它是新的事实标准。它使用与npm相同的package.json
,几乎完全兼容。composer
(因为我不会使用php
),尽管它似乎仍然活跃和流行。npm
是nodejs的包管理器,因此它针对的是nodejs环境,这通常意味着服务器端nodejs项目或命令行项目(bower本身是一个npm包)。如果您要使用nodejs做任何事情,那么您将使用npm。
bower
是一个旨在(前端)Web项目的包管理器。您需要npm和nodejs来安装bower并执行它,尽管bower包不是专门针对nodejs的,而是针对“浏览器”环境。
composer
是针对php项目的依赖项管理器。如果你要做一些symfony(或纯php)方面的事情,这很可能是可行的方式。
总之:
是的,“json”文件描述了基本的软件包信息和依赖关系。是的,它们是必需的。
那么README呢? :-)