「モジュール」・「パッケージ」・「ライブラリ」はよく聞くワードだが、違いがよく分からなかったので調べてまとめてみた。調べているとPythonを前提にした記事が多かったので、本記事でもPythonを前提に進める。他の言語等に対しても同じ理論が通用するかについては不明だが、おそらく通ずるところはあると思う。
#モジュール
モジュールとは.py
で作られるファイルのこと。ある程度長いプログラムを書く際に.py
ファイルに内容を保存。そして使いたい時がきたら、他のPythonファイルからimportでモジュールとして呼び出す。もちろん、呼び出したモジュールに保存されているクラスや関数は呼び出し先でも利用可能。
#パッケージ
パッケージとはいくつかのモジュールをディレクトリに整理し、ひとまとめにしたもの。機能が似通っているモジュール同士が複数あると、それらをまとめた方が扱いやすくなる。importでパッケージを呼び出すと、パッケージ内にある全てのモジュールの内容を利用できるようになる。
#ライブラリ
ライブラリとはいくつかのパッケージをインストールできる形にまとめたもの。ライブラリには、Pythonに付属していてすぐに使える 標準ライブラリ と、ダウンロードなど追加インストールをしてから利用する 外部ライブラリ がある。機械学習で用いられる「TensorFlow(テンソルフロー)」、グラフ描画に使われるMatplotlib(マットプロットリブ)、データ解析を支援する機能を提供するPandas(パンダス)などは全て外部ライブラリ。
#階層
ライブラリ > パッケージ > モジュール