0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

モジュールバンドラーについて

Last updated at Posted at 2024-12-09

普段、何気なく使用している webpackvite

今まできちんと理解せずに使用していたなと思い、
今回はモジュールバンドラーとは何かについてまとめていきます。

モジュールバンドラーとは

そもそもモジュールバンドラーとは何でしょうか。

レバテックLABにて下記の記述がありました。

バンドラーとは、JavaScriptファイルやCSSファイル、画像ファイルなどの、静的アセットをまとめてバンドル化するツールです。主に、JavaScriptモジュールのバンドルに主眼が置かれていることから、モジュールバンドラーとも呼ばれます。また、単純にビルドツールと呼ばれることもありますが、表しているものはほとんど同じです。


なるほど。
その名の通り、モジュールをバンドルする(束ねる)もののようです。

各種ファイルをひとまとめにすることで、
通信時間や通信の回数を抑えることができ、
効率的に処理を実行できるのですね。

主な機能

ではモジュールバンドラーの主な機能をみていきましょう。

①モジュールの依存関係の解決

複数のJavaScriptファイル間の依存関係を解析し、それを適切な順序でまとめます。

フロントエンド開発では、JavaScriptファイルを小さなモジュールに分割し、
それらを必要な部品で組み合わせて使用する「モジュール化」が一般的な手法です。

モジュールバンドラーは、
そのモジュール化により読み込み時間が増え、
依存関係を把握しづらくなるといった問題を解決してくれます。

②トランスパイルと最適化

バンドルされたファイルを最適化し、コードのサイズを小さくします。

モジュールバンドラーは、
空白や改行、コメントの除去など最小化/圧縮処理、
TreeShakingといった最適化処理を行ってくれます。

また、ES6やTypeScriptなど、
モダンなJavaScriptの記法を古いブラウザ向けに変換します。

③アセットの統合

CSSや画像、フォントなどの非JavaScriptファイルも一緒にバンドルします。

JavaScriptファイルだけではなく、
アセットバンドルというプロセスを介して他のCSSや画像などもバンドルできます。

主な種類

ここまで、モジュールバンドラーについて学んできました。
ではどのような種類があるのでしょうか。

WebPack

最も広く使用されているモジュールバンドラー。
プラグインやローダーを使用してJavaScriptファイル以外もバンドル可能。
設定が複雑。

Parcel

設定不要なゼロコンフィグアプローチを採用し、不要な初期設定なし。
様々なアセットをバンドル可能。

Rollup

軽量でモダン。
コードの出力サイズを最小化することに優れている。

Vite

開発サーバーの起動が高速。
開発時と本番ビルド時に異なるアプローチ(Rollupを内部的に使用)を採用。

おわりに

今回はモジュールバンドラーの概要についてまとめました。

今度はそれぞれ個別の種類について調べ、
まとめたいなと思います。

それでは。

参考文献

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?