npm 的作用


接觸 npm 也有一個多月的時間了,一直只是將他作為當着 webstorm + node.js 環境中的一個插件來用(甚至說把她當着命令來用)。畢竟大部分的時間,他是輸入的命令行中的一部分(別笑,小新人真的會存在這個問題)。這幾天決定好好整理一下關於 npm ,收藏在這了。

-------------------------------------------------------------------------------------

1、安裝

現在 npm (全稱是 Node Package Manager) 都是集成在node.js中的,所以基本上 node.js 安裝成功后,npm 也就安裝成功了。

在(webstorm 或者 node.js)命令行界面輸入 npm -v 查看安裝的 npm 的版本,同時也可以驗證 npm 是否安裝成功。

2、介紹

一個偉大的擁有“懶惰、急躁和傲慢”等三大程序員美德的程序員 Isaac Z. Schlueter,實在受不了原本的代碼共享的方式,想要創建一個更加簡單易操作的包管理器。在下載別人的共享代碼的時候,就不需要滿世界的去找網站下載。然后他就利用 JS 寫出了 npm (不得不說大神就是這么任性,github的創始人也是~)。

3、具體步驟

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(管理器)。

4、發展

Isaaz 通知 jQuery 作者 John Resig,他會答應嗎?這事兒不一定啊,對不對。

只有社區里的人都覺得 「npm 是個寶」的時候,John Resig 才會考慮使用 npm。

那么 npm 是怎么火的呢?

npm 的發展是跟 Node.js 的發展相輔相成的。

Node.js 是由一個在德國工作的美國程序員 Ryan Dahl 寫的。他寫了 Node.js,但是 Node.js 缺少一個包管理器,於是他和 npm 的作者一拍即合、抱團取暖,最終 Node.js 內置了 npm。

后來的事情大家都知道,Node.js 火了。

隨着 Node.js 的火爆,大家開始用 npm 來共享 JS 代碼了,於是 jQuery 作者也將 jQuery 發布到 npm 了。

所以現在,你可以使用 npm install jquery 來下載 jQuery 代碼。

現在用 npm 來分享代碼已經成了前端的標配。

5、后續

Node.js 目前由 Ryan Dahl 當時所在的公司 joyent 繼續開發。Ryan Dahl 現在已經去研究 AI 和機器學習了,並且他把 Node.js 的維護權交給了 Isaaz。(我是不是也應該去研究 AI 和機器學習啊教練)

而 Isaaz 維護了一段時間后,辭職了,成立了一個公司專門維護 npm 的 registry,公司名叫做 npm 股份有限公司……誰說開源不能賺錢的~

-------------------------------------------------------------------------------------

為啥寫着寫着有一種沖動去寫篇關於 node.js 的介紹文檔呢~這一定是我的錯覺。不過 node.js 這一塊我確實還是皮毛階段,大概知道他怎么用,實際的具體功能等,好像還真的是沒有那么清楚。下一篇就整理 node.js 吧。就是這樣。

npm 教程參考:http://www.runoob.com/nodejs/nodejs-npm.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM