JavaScriptクイズ
webpackとViteについて正しい説明はどれですか?
解説
webpackとViteは、どちらもJavaScriptやWebアプリケーションの開発で使われるビルドツールです。最大の違いは開発時の処理方法にあります。webpackは開発時もすべてのモジュールをバンドルしてからブラウザに提供します。一方、Viteは開発時にブラウザのネイティブESモジュールを活用し、リクエストされたファイルだけをオンデマンドで変換・配信します。これにより開発サーバーの起動やHMRが高速になります。webpack(開発時) ソース → バンドル → ブラウザ Vite(開発時) ソース → ESMでそのまま配信 → ブラウザ他の選択肢が誤りである理由を整理します。「Viteも開発時にバンドルする」は誤りです。Viteの開発サーバーが高速な理由はまさにバンドルをスキップしてESMで直接配信する点にあります。キャッシュの効率だけの問題ではありません。「webpackは開発専用、Viteは本番専用」は誤りです。どちらも開発と本番の両方に対応しています。Viteは本番ビルドにRollupを使用します。「ViteはRust製」は誤りです。Vite本体はJavaScript/TypeScript製です。Rust製のバンドラーとしてはTurbopackやRspackなどが該当します。なお、Viteは本番ビルド時にはRollup(将来的にはRolldownへ移行予定)を使ってバンドルを行うため、開発時と本番時で異なるアプローチを取るという点も特徴的です。