初識篇 — npm的前世此生

npm的簡介:

  • npm 是 JavaScript 世界的包管理工具
  • 而且是 Node.js 平臺的默認包管理工具。經過 npm 能夠安裝、共享、分發代碼,管理項目依賴關係
  • 其是隨同NodeJS一塊兒安裝的包管理工具

本篇話題:

  • 大多數介紹npm的教程都是怎樣安裝,配置或使用
  • 而本篇要講的是npm的由來,他是幹什麼的及爲何要用npm [主要針對新手,讓其更快速的瞭解npm,老司機請繞道]
  • 從而更好的瞭解npm

社區:

  1. 首先在介紹npm以前先了解一下社區
  2. 什麼是社區
  • 社區簡單來講就是——指由於共享共同價值觀或文化的人羣,居住於同一區域,以及從而衍生的互動影響,而彙集在一塊兒的社會單位
  1. 社區的做用
  • 可使用別人貢獻的代碼,也能夠貢獻代碼給別人用
  • 在前端社區中,最大的社區應該是GitHub了
  • 前端能夠經過GitHub來分享源代碼,收集資源,討論問題等

npm的發展

一.起源

  1. 在GitHub尚未興起的時候,人們經過網址來共享代碼,好比當你想使用JQ的時候,你能夠去JQ官網下載連接使用JQ。當GitHub興起以後,社區中也會有人使用GitHub的下載功能
  2. 當項目依賴的代碼愈來愈多,你會發現一件很繁瑣的事情
  • 去JQ官網下JQ
  • 去BootStorap官網下BootStarp
  • ...
  1. npm 的出世
  • 當有困難發生時,總會有一位先行者出現 —— Isaac Z. Schlueter(npm創始人),其給出了一個解決方案:用一個工具把這些東西集中到一塊兒來管理,這個工具就是npm,全稱 Node Package Manager
  1. npm的思路:
  • 創建一個代碼倉庫,裏面存放了全部須要被共享的代碼
  • 通知JQ,BootStarp等的做者,讓其把代碼提交到倉庫中,而後分別給他們取個名字,例:jQuery,BootStarp等
  • 當有人想使用這些代碼時,就可使用npm來下載代碼了
  • 這些被使用的代碼就叫作包[package],也是npm的名字由來

二.發展

  1. 當 Isaac Z. Schlueter 通知其餘做者加入到 npm 時,做者們會答應嗎? —— 這個就不必定了,但當社區裏的人都使用 npm 的時候,做者們纔會開始考慮加入到 npm
  2. npm 的逆襲
  • 這裏就不得不提到 node.js 了,做者是 Ryan Dahl
  • npm 的發展和 node.js 的發展相輔相成 , node.js 缺乏一個包管理工具,因而他們一拍即合,最終node.js內置了npm
  • 後來 node.js 火了,隨着 node.js 的火爆,你們開始使用 npm 來共享 js 代碼,因而JQ等的做者們也將本身的東西發佈到了npm上,因此如今你們可使用 npm install xxx 來下載 相對應的 xxx 代碼了
相關文章
相關標籤/搜索