iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 5
0
自我挑戰組

通過Node.js了解後端運作原理!系列 第 5

Day5. NPM介紹

回頭講一下NPM是什麼,因為之後會用到(包含我現在開發也常用)。
這邊引用nodejs-wiki-book的說明

NPM 全名為 Node Package Manager,是 Node.js 的套件(package)管理工具, 類似 Perl 的 ppm 或 PHP 的 PEAR 等。安裝 npm 後,使用 npm install module_name 指令即可安裝新套件,維護管理套件的工作會更加輕鬆。

NPM 可以讓 Node.js 的開發者,直接利用、擴充線上的套件庫(packages registry),加速軟體專案的開發。npm 提供很友善的搜尋功能,可以快速找到、安裝需要的套件,當這些套件發行新版本時,npm 也可以協助開發者自動更新這些套件。
npm 不僅可用於安裝新的套件,它也支援搜尋、列出已安裝模組及更新的功能。

至於開發需要什麼功能模組可以上NPM官網查詢,我本身在用GULP時就常常去上面翻有什麼模版相關套件加速開發XD

套件安裝的方式就是打開終端機cd到專案目錄下

npm install <模組名稱>

NPM工具就會連到線上的模組資料庫(所以要有網路),取得最新的模組,然後建立一個名叫node_modules的目錄並放入,而程式裡模組引用方法跟前一天的方式。

跟內建模組不同的是我們可以看到安裝完後的模組檔案結構,大致上可以分為

  • lib/
    大部份的第三方模組目錄裡都會在建立這個叫「lib」(Library)的目錄,用來放Javascript程式,雖然不是硬性規定,不過開發者都習慣了就是。

  • package.json
    這個JSON檔是模組的定義資料(Metadata),用來寫模組的名稱、版本、作者..描述、關鍵字、授權、貢獻者、維護者、腳本..等資訊還有相依性設定

  • READMD.md
    模組的說明文件,支援Markdown語法,方便其他人快速了解模組的用途及使用方法

那建立package.json的方式除了手動自己寫之外,也可以透過指令npm init自動建起來。

package.json設定範例

{
    "name": "appName",
    "version": "1.0.0",
    "dependencies": {
      "ejs": "1.2.0",
      "sass": ">= 1.5.5",
      "eslint": "latest"
  }
}
  • "ejs": "1.2.0"
    代表專案的ejs套件相依版本是1.2.0
  • "sass": ">= 1.5.5"
    代表使用版本大於1.5.5的sass套件
  • "eslint": "latest"
    代表使用最新版本的eslint套件

上一篇
Day4. 建立HTTP網站伺服器程式
下一篇
Day6. 後門程式實作(上)
系列文
通過Node.js了解後端運作原理!30

尚未有邦友留言

立即登入留言