Slide 1

Slide 1 text

TypeScript 7.0の現在地と備え方 2026-03-18 TypeScript 7.0を読み解く「uhyo さんに聞く、ネイティブ化の背景とこれから」

Slide 2

Slide 2 text

発表者紹介 uhyo 株式会社カオナビ フロントエンドエキスパート 2

Slide 3

Slide 3 text

本日のテーマ TypeScript 6.0は本日リリース!(日本時間) そして1か月後には7.0のリリースが見込まれて いる。 3

Slide 4

Slide 4 text

This Talk TypeScript 7.0に至るまでの流れと、 今意識しておくとよいことを説明します。 4

Slide 5

Slide 5 text

TypeScript 7.0までの流れ 5

Slide 6

Slide 6 text

A 10x Faster TypeScript 2025年3月11日に行われた衝撃的な発表。 TypeScriptコンパイラをGoに 移植することが発表された。 6 https://devblogs.microsoft.com/typescript/typescript-native-port/

Slide 7

Slide 7 text

当初のロードマップ(Claudeさん作) 7

Slide 8

Slide 8 text

TypeScript Native Previews 5月22日にはプレビュー版が公開され、Go実装を 試せるようになった。 型チェックがある程度動作し、 実際すごく速かった。 8 https://devblogs.microsoft.com/typescript/announcing-typescript-native-previews/

Slide 9

Slide 9 text

Progress on TypeScript 7 - December 2025 12月2日の進捗報告。 型チェックについてはほぼ 完成しており、エディタサ ポートも実用圏内に。 9 https://devblogs.microsoft.com/typescript/progress-on-typescript-7-december-2025/

Slide 10

Slide 10 text

新しいロードマップ 10

Slide 11

Slide 11 text

TypeScript 6.0のリリース 11

Slide 12

Slide 12 text

TypeScriptのリリース周期 TS 5.8までは、3ヶ月に1回という周期を保っていた。 それ以降はTS 7.0の作業が本格化し、周期が乱れた。 •TS 5.8 → TS 5.9: 5か月 •TS 5.9 → TS 6.0: 7か月半 •TS 6.0 → TS 7.0: 1ヶ月目標と言われているが…… 12

Slide 13

Slide 13 text

Go版TypeScriptの実際 13

Slide 14

Slide 14 text

実際に試してみた 型チェックは今すぐにでも試すことができる。 自社のコードベースで試してみよう。 14

Slide 15

Slide 15 text

型チェック時間 弊社では55秒ほどかかっていた型チェックが 14.5秒となり、3~4倍の高速化が見られた! 公称の10倍には達しなかったが、顕著な高速化が 確認できた。 15

Slide 16

Slide 16 text

メモリ使用量 しかし、メモリ使用量も2倍になりCIが落ちる!! 公式では使用量半減とか言っていたのになぜ…… 16

Slide 17

Slide 17 text

答え メモリ効率が良くなったとはいえ、 並列化されているため複数スレッドの メモリ使用量を合計すると従来よりも 瞬間的な使用量が大きくなると思われる。 足りない場合は、CIランナーのメモリ容量 を2倍とかにしよう。 17

Slide 18

Slide 18 text

TypeScript 7.0に備えて 18

Slide 19

Slide 19 text

7.0の備え方 Q. TypeScript 7.0に備えるためにはどうすれば? A1. とりあえずTypeScript 6.0に上げる。 A2. 何なら、7.0のプレビュー版を導入する。 19

Slide 20

Slide 20 text

TypeScript 6.0に上げる TypeScript 6.0は、7.0に備えるためのバージョン。 •7.0で廃止されるオプションが非推奨となり、 使うと警告を出してくれる •各種オプションの初期値が変更される 20

Slide 21

Slide 21 text

TypeScript 6.0の変更点 「TypeScript 6.0で非推奨化されるオプションたち」 というトーク(TSKaigi Hokuriku 2025)をご参照ください。 代表的なところだと、target: es5の廃止など。 21

Slide 22

Slide 22 text

6.0に上げて7.0に備える TypeScript 6.0に上げて、問題のある設定を洗い 出そう。 非推奨の警告があった場合は修正しよう。 修正の影響範囲がどうなるかは、ビルド周りの設定 次第。 今どきのスタックであれば、CIが通ればOK程度の 影響範囲で収まることが多い。 22

Slide 23

Slide 23 text

7.0とこれから 23

Slide 24

Slide 24 text

APIを利用するエコシステム TypeScript本体(tsc)については問題なく移行 できそう。 問題は、APIを使っていた周辺ツール。 •typescript-eslintの型情報を利用したlintなど APIは7.0にも存在するが、6.0までとは互換性無し。 24

Slide 25

Slide 25 text

tsgolint Go版TypeScriptから 型情報を得てリント するツール。 現在はoxlintを通じて 使用できる。 25

Slide 26

Slide 26 text

tsgolintの概要 すでに多くの型情報ありルールが実装されており、 TypeScript 7.0時代のリンターとして実用的。 公開APIではなく内部APIを使うアーキテクチャが やや不安だが、VoidZeroが現在メンテナンスして いるのでまあ大丈夫か。 26

Slide 27

Slide 27 text

TypeScript公式のAPI TypeScript 7.0も、外部向けのAPI (IPCベース) を持つ。 しかし、オーバーヘッドがあるなどの問題も存在 しており、実用面や事例の面で内部API shim方式 に後れを取る。 27

Slide 28

Slide 28 text

TypeScript公式APIの不安 公式のAPIは無いよりはあったほうが良いが、 コミュニティがtsgolint方式に流れると、需要が 無いとみなされ公式APIに労力が割かれない恐れ もある。 tsgolint方式はメンテナンスに労力がかかりそう。 28

Slide 29

Slide 29 text

まとめ 29

Slide 30

Slide 30 text

まとめ TypeScript 7.0までの流れ、7.0への備え方、 型情報利用リンターの現状について紹介しました。 すぐに7.0に移行できるように準備しつつ、 今後の流れを見守りましょう。 30