20分セッション
13:40 - 14:00 / kickflowトラック
TypeScript で型チェックを行う際、対象を一つのプログラムとして解析する通常のコンパイル方法と、対象を複数のプロジェクトに分割し、プロジェクト毎のコンパイル結果を統合する方法(ビルドモード/プロジェクト参照)があります。
モノレポ構成で複数のエントリーポイントが存在する場合、通常のコンパイル方法では共通部分の型チェックは重複して行われることになりますが、ビルドモードではこれらの重複部分のコンパイル結果を共有し効率よく型チェックを行える、とされています。
ビルド時間の短縮やメモリ効率といった多くの利点がある、ということで使わない手はないだろう、と意気揚々とビルドモードに移行しようとしたところそう一筋縄ではいきませんでした。
このセッションでは、通常のコンパイル方法で型チェックを行っていた大規模モノレポを、実際にビルドモードへ移行してみた結果、どのような制約・トレードオフがあったのか、結局ビルドモードを使うべきなのか、など得られた知見を共有します。

