トランスパイラとモジュールバンドラ
複雑化するWeb開発
JavaScriptは、当初はWebサイトに簡易的な動きを追加させるための言語として設計されました。しかしながら、高度なWebアプリケーションの台頭や、Node.jsをはじめとしたブラウザにおけるJavaScriptのユースケースの広がりにより、標準的なJavaScriptのみでの開発には限界があること がわかってきました。
このため、現代では、JavaScriptは事前に何らかの変換を行っておくことが一般的になっています。
トランスパイラ
トランスパイラ は、ソースコードを別のソースコードに変換するためのプログラムです。JavaScriptにおいてトランスパイラが必要になるのは、主に2つの理由によります。
ひとつは、最新の機能を使用するためです。JavaScriptの言語仕様は、Ecma InternationalのTC39によって作成されていますが、新しく策定された仕様は、まだブラウザなどによって実装されていない場合があります。Babelは、そういった最新の言語仕様に沿って書かれたプログラムを変換し、古い仕様の範囲内で解釈できるプログラムに変換するための、最も有名なトランスパイラです。
もうひとつは、別の言語で書かれたプログラムをJavaScriptに変換するためです。次の章で扱うTypeScriptは、トランスパイラを用いてJavaScriptに変換されます。