看到网上看很多关于npm的教程,但是很少有人去谈及我们为什么要去用它,它是怎么发展来的。

背景

以前我们进行开发需要引入的一些框架代码比如jquery、bootstrap,得去它们官网一个个下载,当你的网站需要引入的越来越多,而且有些还有依赖关系后,就感觉啊,越来越麻烦了

那有什么办法能解决这个问题呢?

这时,一个程序员 Isaac Z. Schlueter (咱们简称 Isaaz)给出一个解决方案:用一个工具把这些代码集中到一起来管理呗,这个工具就是他用 JS 写的 npm,全称 Node Package Manager

npm是怎么做的呢?

1. 首先买个服务器作为代码仓库(registry),在里面放所有需要被共享的代码

2. 发邮件通知 jQuery、Bootstrap、Underscore 作者使用 npm publish 把代码提交到仓库( registry) 上,分别取名 jquery、bootstrap 和 underscore(注意大小写)

3. 社区里的其他人如果想使用这些代码,就把 jquery、bootstrap 和 underscore 写到 package.json 里,在终端运行 npm install ,npm 就会帮他们下载代码

4. 下载完的代码出现在 node_modules 目录里,就可以使用了

这些可以被使用的代码被叫做「包」package,也就是 NPM 名字的由来:Node Package(包) Manager(管理器)。

但是它刚开始发展可没那么顺利

那它是怎么火的呢

这就和NodeJs关系大了

Node.js 是另一个程序员 Ryan Dahl 写的。他写了 Node.js,但是 Node.js 刚好缺少一个包管理器,这不是巧了么,于是他和 npm 作者互相取暖,最终 Node.js 内置了 npm,也就是说安装Node.js后就可以使用npm了

当nodejs火了以后,大家开始用 npm 来共享 JS 代码了,也带动了npm火了,越来越多的框架作者就开始把自己的代码提交到仓库了~