npm
正式名称 : Node Packcage Maneger
Node.jsのパッケージ管理ツール外部で、ライブラリに対する依存バージョンの管理、更新を容易にすることが出来る。
npm ls でディレクトリ内のパッケージ依存構造( 依存ツリーを確認できる。)
package.json
JSONファイルによって管理され、メタデータ(知らん)の管理にも使われる。
npm initで生成でき、様々な値を設定できる。
メタデータとは : データが持つデータ、データ自身に付随するデータのこと(意味不)
Excelで言えば作成者、作成日などを指す。
###値
name
パッケージ名の設定です。
レジストリに公開する際必要で、付けれる名前には制約がある(オライリーハンズオンNode p.365)
スコープ付きパッケージ[@スコープ名/]で設定できる。
スコープ : 変数がどの場所から参照できるか定義する概念、同一スコープ上にある変数にアクセスできるらしい....。
version
パッケージのバージョンです。
バージョンはセマンティックバージョニングv2.0.0の仕様を満たす書式でなければならず、
メジャーバージョン、マイナーバージョン、バッチバージョンで表される。
- メジャーバージョン : 以前のverと互換性が無い(破壊的な変更)時にに変化。
- マイナーバージョン : 互換性を保ったまま機能を追加したい時変化。
- バッチバージョン : 互換性を保ったまま不具合を修正したい時変化。
ただしメジャーバージョンが0のうちの更新は、破壊的変更が行われることがある。
decription
パッケージの説明文。
keyword
関連するキーワードの指定(配列j)。
main
パッケージのメインエントリポイントとなるファイルを指定する。
author、contributors
一人で開発しているパッケージはauthor、複数人の時はcontributorsに記述する。
license
その名の通りライセンスの設定。
private
パッケージの公開設定。
- "private" : true の時パッケージは非公開。
dependencies
パッケージの依存関係の管理。
ver前に「^」がついている時指定されているバージョンと互換性のあるバージョンに依存する。
"dependencies": {
"mkdirp": "^1.0.4",
"rimraf": "^3.0.2"
}
この場合のmkdripに注目すると 依存パッケージのバージョン範囲は 1.0.4以上2.0.0未満となる。
devDependencies
テスト、ビルド時の依存パッケージを管理する項目。
npm install --save-devで追加できる。
script
プロジェクトで必要なタスクをスクリプトとして記述するためのフィールド。
npm run -script (スクリプト名)、npm run (スクリプト名) などで実行。