Tree shaking (ツリーシェイキング)
ツリーシェイキングとは実行されないコードを削除することで、JavaScript の文脈で利用される用語です。
ツリーシェイキングは ES2015 の import 文と export 文を利用して、エクスポートされたコードが他の JavaScript ファイルで利用されているかどうかを判定します。
モダンな JavaScript アプリケーションの開発では、webpack や Rollup のようなモジュールバンドラーが複数の JavaScript ファイルを 1 つにまとめられます。この際にツリーシェイキングが行われます。ツリーシェイキングは、コードの構造を整理してファイルサイズを小さくできる、といった点で製品としてリリースする前の重要な処理となっています。
関連情報
- "Benefits of dead code elimination during bundling" in Axel Rauschmayer's book: "Exploring JS: Modules"
- Tree shaking implementation with webpack