17 ポイント 投稿者 GN⁺ 2025-11-10 | 1件のコメント | WhatsAppで共有
  • 彼が2012年に TypeScript に取り組み始めたきっかけは、JavaScript が大規模なマルチ開発者コードベースでスケーラビリティに欠けていたためであり、数百万行の疎な型付けコードを扱うチームにはシステムの複雑さを管理するためのツールが必要だったことにある
  • 2025年の TypeScript は GitHub で最も多く使われる言語となり、JavaScript と Python を初めて上回った。今年だけでも 100万人以上の開発者が TypeScript でのコントリビューションを開始しており、前年比 66% 増
  • TypeScript の成功要因は、静的型システムと AI コード生成の相性の良さにある。AI が大量のコードデータを学習して生成する際、型が信頼性と保守性を高める真実の検証役として機能する
  • コンパイラを Go に書き直し、10倍の性能向上を達成。ネイティブ実行と共有メモリ並行性がそれぞれ半分ずつ改善に寄与し、既存の動作は完全に保持してコミュニティとの互換性を維持した
  • AI 時代に IDE は開発者だけでなく、エージェントのための環境へと進化しており、TypeScript の構造的型システムがエージェントによる安全なリファクタリングとコードベースの決定論的推論の基盤を提供する

TypeScript 誕生の背景と目標

  • 2012年当時、JavaScript はすでに Web の中心だったが、大規模開発に適したスケーラビリティが不足していた
    • チームは数百万行の疎な型付けコードをデプロイしており、システムが複雑になるほど推論が難しくなっていた
    • TypeScript の目標は JavaScript を置き換えることではなく、型、ツール、リファクタリング機能を追加することで大規模開発を可能にすることだった
  • Anders は「JavaScript コミュニティの 25% が関心を持てば成功」と考えていたが、現在の水準はその予想をはるかに超えている
    • 「毎日これほど多くの人が依存しているのを見ると驚く。チーム全体が驚いている」

TypeScript の中核的特徴

  • JavaScript の型ベースのスーパーセットであり、通常の JavaScript にコンパイルされる
    • 静的型検査、インターフェース、ジェネリクス、モダンな言語機能を追加
    • コンパイル時に型情報を削除するため、JavaScript が動作するあらゆる場所で動く
  • 開発者が利用する理由:
    • 実行前に型エラーを検出できる
    • IDE の自動補完とリファクタリングが向上する
    • チーム間で大規模コードベースを保守できる
    • フレームワークや AI 支援ツールとシームレスに統合できる
  • 主な用途: フロントエンドフレームワーク(React, Angular, Vue)、バックエンドシステム(Node.js, Deno)、SDK、デザインシステム、強い型が必要な AI ベースのエージェントフレームワーク
広告

TypeScript の市場支配力

  • 2025年時点で、ほぼすべての現代的なフロントエンドフレームワーク(React, Next.js, Angular, SvelteKit)がデフォルトで TypeScript をスキャフォールディングしている
    • 結果として、より安全なコードベース、より優れた自動補完、深夜3時の undefined デバッグセッションの減少につながっている
  • 「TypeScript を JavaScript のように感じさせつつ、スーパーパワーを与えることが魔法だった」

コンパイラの書き直し

  • TypeScript はもともとセルフホスティング(TypeScript で記述)されており、移植性とハックしやすさを維持していた
    • しかし最終的に性能が問題になった
    • 「セルフホスティングを諦めるのは苦しかったが、これ以上性能を引き出せないと分かった」
  • C# や他言語を試した末に、Go を選択
    • 10倍の性能向上を達成: 半分はネイティブ実行、半分は共有メモリ並行性によるもの
    • 「10倍は無視できない」
  • 新コンパイラは既存コンパイラの完全なコピーで、バグまで同じ
    • 「コミュニティは何も捨てる必要がない」
  • 動作を保ったまま性能を改善するという哲学は、開発者が TypeScript を信頼する理由の一つ
    • 数年ごとに完全に書き直すのではなく、互換性を保つ進化的システムである
    広告

オープンソースに対する哲学

  • Anders はオープンソースを自然選択を反映する生態系として見ている
    • 「オープンソースは大きな実験だった。資金調達の方法を誰も本当に見つけられていないが、それでも私たちはここにいる。かつてないほど大きくなり、消えることもないだろう。コードに刻まれた進化だ」
  • Octoverse のデータもそれを裏づけている。2025年、開発者はほぼ10億件のコミットをプッシュし、前年比 25% 増
    • 11億2千万件が公開およびオープンソースリポジトリに送られた
  • TypeScript リポジトリは、12年分の issue、プルリクエスト、設計ノートによって、言語進化の生きたアーカイブとなっている
    • 「GitHub には 12年分の歴史が刻まれている。すべて検索可能だ。grep できる進化だ」

AI 時代に TypeScript が繁栄する理由

  • Octoverse 2025 で最も印象的なデータは、AI が言語の選好を変化させていること
    • 開発者は、AI 支援コーディングをより信頼性が高く保守しやすいものにする型付き言語へ移行している
  • Anders の説明: 「AI がある言語でコードを書く能力は、その言語をどれだけ多く見てきたかに比例する。AI は巨大な再生産機械で、少し外挿する。AI は JavaScript、Python、TypeScript を膨大に見てきたので、これらの言語でうまくコードを書ける。新しい言語は実際に不利だ」
  • データへの親和性と TypeScript の静的型システムが組み合わさることで、AI ファーストのワークフローに比類なく適したものになっている
    • 「AI に 50万行のコードを翻訳しろと言えば幻覚を起こすかもしれない。しかし、その翻訳を決定論的に実行するプログラムを生成しろと言えば、信頼できる結果を得られる。それこそが型が解決するために作られた問題だ」
    広告
  • 中核メッセージ: 人間と機械の両方がコードを書く世界では、型は官僚主義ではなく真実の検証役である

IDE からエージェントへ

  • 大規模言語モデルの台頭は、「開発者ツール」の意味そのものを変えている
    • IDE は開発者だけでなく、エージェントのための環境へ進化している
  • 「AI は最初はアシスタントとして始まった。今では作業を実行し、あなたは監督する。AI は私たちのように IDE を必要としない。必要なのはサービスだ。だから Model Context Protocol の取り組みが興味深い」
  • Octoverse レポートはこの変化を、**「AI はコードだけでなく選択そのものを再構成している」**と説明している
  • TypeScript のような型付き言語は、エージェントが安全にリファクタリングし、意味的クエリに答え、決定論的な方法でコードベースを推論するために必要な構造を提供する
  • 「目標は AI ワークフローを十分な決定論で囲い込み、脱線せず有用な状態に保つことだ」

進化し続ける言語

  • Turbo Pascal から C#、そして今の TypeScript まで、Anders の仕事は数十年にわたる
    • 印象的なのは一貫性であり、複雑なソフトウェアを推論しやすくする言語を構築してきたことだ
  • 「違いを生み出す何かに取り組むことほど満足できるものはない。TypeScript は変わり続けるが、いつも同じところに戻ってくる。開発者が意図を明確に表現できるようにすることだ」
  • この明確さこそが、2025年には毎秒1人の新しい開発者が GitHub に登録し、そのうち増え続ける割合が TypeScript から始めている理由を説明しているのかもしれない
  • TypeScript の物語は言語設計だけの話ではなく、進化の物語でもある
    • JavaScript のスケーラビリティに対する実用的な解決策として始まったプロジェクトが、開発者、そして今では AI がともにコードを書く方法の基盤となっている

1件のコメント

 
vb6ko 2025-11-11

AIがその言語を大量に見ていて得意だというのも、もちろん重要な要素ですよね。
さらに言えば、私はTSのinline typeのようなものが良いと思います。
AIの特性上、コーディング分野ではアテンションがどう学習されているのかは分かりませんが、
やはり近くにある型であるほど、より正確に守ってくれるのではないでしょうか?
そうでなければ、内部的にツールを使って型定義をreadして、context(prompt)にもう一度付け足す必要があるでしょうし、
そういう点で良いのではないかと思います.