📖
「モジュール」「パッケージ」「ライブラリ」の違い
前書き
JavaScriptで「モジュール」「パッケージ」「ライブラリ」を説明します。それぞれコード例を挙げて解説します。
1. モジュール
モジュールは、単一のファイルに機能をまとめてエクスポートし、他のファイルでインポートして使用する仕組みです。
例: 独自モジュールを作成
- mathUtils.js(モジュールファイル)
mathUtils.js
export function add(a, b) {
return a + b;
}
export function multiply(a, b) {
return a * b;
}
- main.js(モジュールを使用するファイル)
main.js
import { add, multiply } from './mathUtils.js';
console.log(add(2, 3)); // 出力: 5
console.log(multiply(2, 3)); // 出力: 6
2. パッケージ
パッケージは、モジュールやライブラリ、設定ファイルをまとめたフォルダー構成の単位です。パッケージには通常、package.jsonが含まれています。
例: 自作パッケージを作成
- package.jsonを作成(npm initで自動生成)
{
"name": "my-package",
"version": "1.0.0",
"main": "index.js",
"dependencies": {}
}
- index.js(パッケージのエントリーポイント)
export function greet(name) {
return `Hello, ${name}!`;
}
- 使用例(他のプロジェクトでこのパッケージをインストールして利用)
import { greet } from 'my-package';
console.log(greet('Alice')); // 出力: Hello, Alice!
3. ライブラリ
ライブラリは、モジュールの集合体で特定の目的を達成するための便利なツール群です。JavaScriptでは、ライブラリは一般的にnpmを使ってインストールします。
例: lodashライブラリ
•インストール:
npm install lodash
• 使用:
import _ from 'lodash';
const array = [1, 2, 3, 4];
const reversedArray = _.reverse(array.slice());
console.log(reversedArray); // 出力: [4, 3, 2, 1]
まとめ
- モジュール: 単一のファイルとして機能を提供(例: mathUtils.js)。
- パッケージ: 機能や設定ファイルをまとめたフォルダー構成(例: 自作パッケージ)。
- ライブラリ: 機能がまとまったツール群(例: lodash)。
JavaScriptのエコシステムでは、モジュールが集まってライブラリとなり、それをさらにパッケージ化して配布します。
参考
Discussion