node包管理器

维基百科,自由的百科全书
跳转至: 导航搜索
Node包管理器
開發者 Isaac Z. Schlueter
穩定版本 1.1.48 / 2012年8月7日(2年前) (2012-08-07)
编程语言 Node.js
平台 Linux Windows OSX
许可协议 MIT License
網站 npmjs.org

Node包管理器(Node Package Manager)。它是一個Node.js包管理器,運行在命令行下,用於管理應用的依賴。

按照作者的定義,npm不是「Node Package Manager」的縮寫,[1]而是「npm is not an acronym」的遞迴縮寫重表。

若將「npm is not an acronym」寫成 "ninaa" ,那麼正好變成「npm is not an acronym」的仿單字縮寫,反倒與其字面所述相反,從而將是錯誤的命名。

「仿單字縮寫」意指該句縮寫後本身必須為可唸的單字形態,這是 acronym 與 abbreviation 主要的不同,abbreviation 並不需要是可唸的字,並且可以是以任意規則將文字縮短後的字,例如 abbreviation 本身可縮短為 "abbr",並沒有硬性規定只能使用第一個字母。

所謂「縮寫重表」是指該字本身已經存在,而重新表述為與原先不同的意義,例如 AMBER Alert 為美國與加拿大,當國內確認發生兒童綁架案時,透過各種媒體向社會大眾傳播的一種警戒告知,AMBER 源於 Amber Hagerman 之名而重新表述為 "America's Missing: Broadcast Emergency Response"。

因此,若將「npm is not an acronym」縮寫為前三個字母 npm,重新表述則是將此 npm 再表述為「npm is not an acronym」並縮寫成 npm,如此無限遞迴仍然是 npm。

若以首字母方式縮寫而假設 npm 為「 n.. p.. m.. 」並將「npm is not an acronym」視為 n 的展開,根據 backronym 的意義,重新表述後再縮寫仍然為原字,即使 p 和 m 未知,結果並沒有不同;但根據奧卡姆剃刀原理,這顯然不是正確的解讀方式。

Node.js0.6版本開始,npm被自動附帶在安裝包中。

例子[编辑]

安裝 LESS:

$ npm install less

參閱[编辑]

外部鏈接[编辑]

引用[编辑]

  1. ^ npm FAQ, npm是「npm is not an acronym」的遞迴縮寫重表