はじめて tsgo について興味を持ったときに私の語ること
by
ishitoko shiho
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
@cidermitaina SmartHR プロダクトエンジニア はじめて tsgo について興味を 持ったときに私の語ること 2025.06.06 Fri. TSKaigi 2025事後勉強会 —— まだまだ型りたい @SmartHR Space
Slide 2
Slide 2 text
@cidermitaina ● プロダクトエンジニア @SmartHR ● 配置シミュレーション機能を担当しています。 ● 音楽と犬が好きです。 About Me
Slide 3
Slide 3 text
みなさん TSKaigi 2025 どうでしたか?
Slide 4
Slide 4 text
学びや知見、気付きありましたか? まだまだ語りたいことありませんか?
Slide 5
Slide 5 text
え! なにそれ、めちゃくちゃおもしろい …!!
Slide 6
Slide 6 text
tsgo の話にとても興味 を持ちました!
Slide 7
Slide 7 text
「TypeScriptとは何であって何でなく、誰のもので、どこへ向 かうのか」 Sosuke Suzuki san TSKaigi で印象に残った発表の話
Slide 8
Slide 8 text
● TypeScriptのエコシステムの変遷、そして今後の展望に ついての話 ● その中で TypeScript での Go 実装の話があった TSKaigi で印象に残った発表の話
Slide 9
Slide 9 text
TypeScript の Go 実装??? 😯 TSKaigi で印象に残った発表の話
Slide 10
Slide 10 text
TypeScript の Go 実装 is ● TypeScript はこれまで JavaScript で実装されてきた ● 大規模なコードベースではパフォーマンスやスケーラビリティに課題があった ● TypeScript のコンパイラを始め各種ツール群を Go 言語に移植 ● この移植により、型チェックやビルド時間の大幅な短縮が期待されている TSKaigi で印象に残った発表の話
Slide 11
Slide 11 text
なんで移植?? なんで Go ?? ほんとに10倍?? TSKaigi で印象に残った発表の話
Slide 12
Slide 12 text
次の日の発表に「 TypeScriptネイティブ移植観察レ ポート」がある …! TSKaigi で印象に残った発表の話
Slide 13
Slide 13 text
わくわく! ☺ TSKaigi で印象に残った発表の話
Slide 14
Slide 14 text
「TypeScriptネイティブ移植観察レポート」 berlysia san TSKaigi で印象に残った発表の話
Slide 15
Slide 15 text
● TypeScript の Go 移植に関しての観察 ● 最近の動向を分かりやすく説明してくれてた TSKaigi で印象に残った発表の話
Slide 16
Slide 16 text
なんで移植なんだろ?? TSKaigi で印象に残った発表の話
Slide 17
Slide 17 text
● 既存の挙動の維持が重要 ● 型チェッカーにとって後方互換性は絶対 ● プラグアンドプレイでの置き換えを目指す TSKaigi で印象に残った発表の話
Slide 18
Slide 18 text
なんで Go ? TSKaigi で印象に残った発表の話
Slide 19
Slide 19 text
● 関数 + データ構造での手続き的な実装スタイルとの親和性が高い ● GC(ガベージコレクション)を持ち循環参照を自然に扱える ● 共有メモリを用いた並列処理が自然にできる ● クロスプラットフォームにネイティブコードで動作する すべてをバランスよく満たすのが Go TSKaigi で印象に残った発表の話
Slide 20
Slide 20 text
tsgo の話おもしろかった! 実際に触ってみたいなー ほんとに10倍なのかな 🤔
Slide 21
Slide 21 text
実際にプレビューを 試してみる
Slide 22
Slide 22 text
● TypeScript のコードを書く ● プレビューを試してみる 実際にプレビューを触ってみる
Slide 23
Slide 23 text
1. 「オブジェクトを再帰的に 読み取り専用にする型」 を作成 実際にプレビューを触ってみる
Slide 24
Slide 24 text
2. プレビューの install npm install -D @typescript/native-previe 参考: Announcing TypeScript Native Previews - TypeScript 実際にプレビューを触ってみる
Slide 25
Slide 25 text
3. tsc でコンパイル npx tsc -p . --extendedDiagnostics 実際にプレビューを触ってみる
Slide 26
Slide 26 text
4. tsgo でコンパイル npx tsgo -p . --extendedDiagnostics 実際にプレビューを触ってみる
Slide 27
Slide 27 text
tsc → 0.38s 実際にプレビューを触ってみる
Slide 28
Slide 28 text
tsgo → 0.042s 実際にプレビューを触ってみる
Slide 29
Slide 29 text
ほんとに10倍だ…! 実際にプレビューを触ってみる
Slide 30
Slide 30 text
なぜこんなにも tsgo が 気になったのか
Slide 31
Slide 31 text
課題、解決手法、選定理由にしっかりとした 理由付けが行われてる。
Slide 32
Slide 32 text
高速性、互換性、実運用をちゃんと両立して いる。
Slide 33
Slide 33 text
エンジニアとして取り組み方や姿勢に感動。
Slide 34
Slide 34 text
実務にすぐ活かせる内容ではないけれど、
Slide 35
Slide 35 text
TypeScript の内部的な実装について知ることができた し、
Slide 36
Slide 36 text
Microsoft の tsgo への取り組み方はエンジニアとして 学べることがたくさんある。
Slide 37
Slide 37 text
おわり👋