ソフトウェア開発ではモジュール、パッケージ、ライブラリという用語がよく使われます。
この記事では、この3つの用語の違いをわかりやすく説明し、どのような場面で使われるのかを詳しく見ていきます。
モジュール・パッケージ・ライブラリの違い
最初にモジュール、パッケージ、ライブラリの違いを以下にまとめます。
- モジュール
- 機能をまとめた1つのコード。
- パッケージ
- 複数のモジュールをまとめたディレクトリやフォルダ。
- ライブラリ
- モジュールやパッケージを組み合わせたもの。外部からインストールして使うのが一般的。
これから各用語について順番に説明します。
モジュールとは
モジュールは機能をまとめたコードです。モジュールは通常、1つのファイルに関数、クラス、変数などが含まれており、他のコードからインポートして再利用することを目的としています。
Pythonの例
Pythonでは、.py
拡張子を持つファイルがモジュールとなります。
# sample_module.py
def greet():
return "Hello!"
# 他のファイルでの利用例
import sample_module # 他のコードからインポート
print(sample_module.greet()) # Hello!
JavaScriptの例
JavaScriptでは、export
とimport
を使ってモジュールを定義・利用します。
// sampleModule.js
export function greet() {
return "Hello!";
}
// 他のファイルでの利用例
import { greet } from './sampleModule.js'; // 他のコードからインポート
console.log(greet()); // Hello!
パッケージとは
パッケージは複数のモジュールをまとめたディレクトリやフォルダです。
Pythonの例
Pythonでは、ディレクトリが__init__.py
ファイルを含むことでパッケージとして認識され、そのディレクトリがパッケージとして機能します(Python 3.3以降は__init__.py
がなくてもパッケージとして機能します)。
my_package/
├── __init__.py
├── module1.py
└── module2.py
JavaScriptの例
JavaScriptでは、NPM(Node Package Manager)を使って複数のモジュールをまとめたパッケージを管理します。package.json
ファイルは、そのパッケージの依存関係やバージョン情報を保持し、プロジェクトの構成や管理を簡単にします。
my-package/
├── package.json
├── module1.js
└── module2.js
ライブラリとは
ライブラリは、モジュールやパッケージを組み合わせたものであり、外部からインストールして利用されることが一般的です。
Pythonの例
Pythonでは、pipを使って外部ライブラリをインストールします。例えば、requests
ライブラリは、HTTPリクエストを簡単に扱うために使われるライブラリです。
pip install requests
JavaScriptの例
JavaScriptでは、NPMを使って外部ライブラリをインストールします。例えば、Lodash
ライブラリは便利なユーティリティ関数を提供する人気ライブラリです。
npm install lodash
本記事のまとめ
この記事ではモジュール、パッケージ、ライブラリについて、以下の内容を説明しました。
- モジュール・パッケージ・ライブラリの違い
お読み頂きありがとうございました。