バンドラー【bundler】

バンドラーとは?

複数のファイルに分かれたソースコードや画像、スタイルシートなどの関連資源を、一つまたは少数のファイルにまとめるツール。主にWebアプリケーションJavaScript開発で使われ、配信効率と実行性能を高める目的で利用される。
バンドラーのイメージ画像

現代のWeb開発では、機能ごとにソースコードを分割して管理するのが一般的である。分割された各ファイルは「モジュール」と呼ばれ、互いに参照し合いながら動作する。この構造は開発者にとって保守や再利用がしやすい反面、Webブラウザファイルを個別に読み込もうとすると通信回数が増え、ページの表示速度が低下しやすい。読み込む順序が一つ狂えばプログラムが動作しなくなる危険もある。バンドラーは分散したファイルを解析し、依存関係を整理してまとめ上げ、ブラウザが効率よく処理できる形に変換する。

処理は「エントリーポイント」(entry point)と呼ばれる起点のファイルを読み込むことから始まる。そこから参照先をたどり、関連するすべてのファイルを把握した上で統合する。この出力ファイルを「バンドル」(bundle)と呼ぶ。統合の過程では、余分な空白や長い変数名を削ってデータ量圧縮する処理や、実際には使われていないコードを除去する最適化も行われる場合もある。

バンドラーが扱えるのはJavaScriptだけではない。CSSや画像、TypeScriptSCSSのように変換(トランスパイル)が必要な形式も、設定やプラグインを組み合わせることで処理できる。TypeScriptJavaScriptへ変換したり、SCSSからCSSを生成したりする処理を組み込めるほか、画像やフォントを適切な場所へ配置する機能を持つツールもある。開発者はファイルの置き場所を個別に管理することなく、コード内で各資源を呼び出せる。

代表的なバンドラーとして、「webpack」「Vite」「esbuild」「Rollup」などがある。webpackは設定の柔軟性が高く大規模な開発で長く使われてきた。Viteは開発中のファイル変更を素早く反映できる仕組みで近年採用が増えている。esbuildはGo言語で実装されており処理速度が速い。Rollupは軽量なライブラリ開発に向いた設計となっている。ReactVueなどのWeb開発フレームワークではプロジェクト作成時にバンドラーが組み込まれており、開発者が設定を意識せず使えるケースも多い。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。