📖

「モジュール」「パッケージ」「ライブラリ」の違い

2024/12/23に公開

前書き

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が含まれています。

例: 自作パッケージを作成

  1. package.jsonを作成(npm initで自動生成)
{
  "name": "my-package",
  "version": "1.0.0",
  "main": "index.js",
  "dependencies": {}
}
  1. index.js(パッケージのエントリーポイント)
export function greet(name) {
    return `Hello, ${name}!`;
}
  1. 使用例(他のプロジェクトでこのパッケージをインストールして利用)
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]

まとめ

  1. モジュール: 単一のファイルとして機能を提供(例: mathUtils.js)。
  2. パッケージ: 機能や設定ファイルをまとめたフォルダー構成(例: 自作パッケージ)。
  3. ライブラリ: 機能がまとまったツール群(例: lodash)。

JavaScriptのエコシステムでは、モジュールが集まってライブラリとなり、それをさらにパッケージ化して配布します。

参考

https://it-infomation.com/module-package-library-difference/

Discussion