Anders Hejlsberg — 言語デザインの巨匠

TypeScriptを理解するには、その設計者Anders Hejlsberg(1960年デンマーク生まれ)の経歴を知ることが重要です。 彼はプログラミング言語設計の世界で、40年以上にわたり革命を起こし続けてきた人物です。

timeline
  title Anders Hejlsbergの言語設計キャリア
  1980s : Turbo Pascal
        : Borland社でオリジナル開発
        : 高速コンパイラで革命
  1990s : Delphi
        : チーフアーキテクト
        : RAD開発の先駆け
  1996  : Microsoft入社
        : J++とWFC担当
  2000s : C# リードアーキテクト
        : .NET言語の設計を主導
  2010  : TypeScript 開発開始
        : 社内コードネーム Strada
  2012  : TypeScript 0.8 公開
        : JavaScriptの型付きスーパーセット
  2025  : TypeScript Go移植 発表
        : Project Corsa で10倍高速化
Anders Hejlsbergの言語設計キャリア — 4つの言語すべてがプログラミングの歴史に名を残す

Turbo Pascal、Delphi、C# — これら3つの言語はいずれも、当時の開発者体験を大きく変えました。 TypeScriptはその集大成であり、Hejlsbergの「開発者体験を最優先する」という一貫した哲学が貫かれています。

TypeScriptの誕生 — なぜ作られたのか

2010年頃、Microsoftは深刻な課題に直面していました。 JavaScriptによる大規模アプリケーション開発が破綻しかけていたのです。

当時のJavaScriptは、Webページの簡単なスクリプト用に設計された言語でした。 しかし、Ajax革命以降、フロントエンドの複雑さは爆発的に増大していました。 Microsoft社内のチームや外部顧客は、Script#やjslint、Google Closure Compilerなどのツールで対処していましたが、 いずれも根本的な解決には至りませんでした。

課題 当時のJavaScript TypeScriptの解決策
型安全性 実行時まで型エラーが分からない コンパイル時に静的型チェック
コード構造化 モジュール・名前空間の標準が未整備 クラス・インターフェース・モジュール
開発者ツール エディタの補完が不正確 Language Serviceによる正確な補完・リファクタリング
大規模コードの保守 コンポーネント間の契約が不明確 インターフェースによる明示的な契約

約50人のチーム(ヘッドはSteve Lucco)が、社内コードネーム「Strada」として約2年間の非公開開発を経て、 2012年10月1日にTypeScript 0.8として世に出ました。 Luke Hoban(F# 2.0の開発者)も初期の共同設計者として参加しており、 F#の設計がTypeScriptに影響を与えたことが示唆されています。

バージョン年表 — 14年間の進化

初期 (2012-2014) — 基盤の構築

バージョン リリース日 主要な変更点
0.8 2012年10月 初版公開。型注釈、クラス、インターフェース
0.9 2013年6月 ジェネリクス対応
1.0 2014年4月 正式版リリース。VS 2013に同梱

初期の反応は懐疑的でした。 「なぜMicrosoftがまた新しい言語を作るのか」という声が多く、 Anders Hejlsberg自身も「25%のJavaScriptコミュニティに興味を持ってもらえれば成功」と控えめな見積もりを立てていました。 しかし、Miguel de Icaza(Mono/GNOME創設者)が言語を賞賛するなど、言語設計に精通した開発者からの評価は高いものでした。

ES6対応期 (2015-2016) — エコシステムの拡大

バージョン リリース日 主要な変更点
1.5 2015年7月 ES6モジュール、tsconfig.json導入
1.6 2015年9月 JSX対応、交差型、abstractクラス
1.8 2016年2月 --allowJsでJSファイル許可

型システム強化期 (2016-2020) — 表現力の飛躍

バージョン リリース日 主要な変更点
2.0 2016年9月 strictNullChecks、制御フロー型分析、never型
2.1 2016年12月 keyof/T[K]Mapped Types
2.8 2018年3月 Conditional Typesinferキーワード)
3.0 2018年7月 Project References、unknown型
3.4 2019年3月 --incrementalビルド、const assertion
3.7 2019年11月 オプショナルチェーニング ?.、Nullish合体 ??
4.0 2020年8月 可変長タプル型
4.1 2020年11月 Template Literal Types

この時期、TypeScriptの型システムは単なる型注釈の域を超え、 チューリング完全な型レベルプログラミング言語へと進化しました。 Conditional Types、Mapped Types、Template Literal Typesの組み合わせにより、 型レベルでのパーサーやルーターすら実装可能になりました。

モダン期 (2022-2026) — 完成と革新

バージョン リリース日 主要な変更点
4.9 2022年11月 satisfies演算子
5.0 2023年3月 ECMAScript標準デコレータmoduleResolution: bundler
6.0 2026年3月 strict: trueがデフォルト、ES5ターゲット廃止、JS版最終リリース
7.0 2026年中頃(予定) Go言語で完全書き直し(Project Corsa)、10倍高速化

コミュニティの成長 — 懐疑から標準へ

xychart-beta
  title TypeScript採用率の推移(Stack Overflow Developer Survey)
  x-axis [2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025]
  y-axis "使用率 (%)" 0 --> 55
  bar [12, 17, 21, 25, 28, 28, 30, 35, 49]
TypeScriptの採用率推移 — 2017年の12%から2025年の49%へ急成長
主要イベント 影響
2012 TypeScript 0.8 公開 懐疑的反応が多数。「25%が興味を持てば成功」
2014 GitHubへ移行、新コンパイラ オープンソースコミュニティとの距離が縮まる
2015 Angular 2がTS採用 Googleの採用で信頼性が飛躍的に向上
2015 VS Code リリース(TSで構築) TS自体の実用性を世界に証明
2018 npm調査: 46%のJS開発者がTS使用 主流化の始まり
2022 TypeScript 10周年 4.9でsatisfies演算子導入
2025 GitHub上で最も使用される言語 第1位 月間260万コントリビューター、前年比+66%
2026 TS 6.0(JS版最終)+ TS 7.0(Go版) 14年の歴史で最大の転換点

オープンソースの旅路

TypeScriptは2012年10月、CodePlex上でApache License 2.0のもとオープンソースとして公開されました。 2014年7月にはGitHubに移行し、同時に新コンパイラ(5倍の性能向上)を発表。 この移行は、Microsoftのオープンソース戦略の転換を象徴する出来事でもありました。

Anders Hejlsbergの言葉: "Open source was a big experiment... It's evolution captured right there in the code." — 12年間の設計議論と意思決定の履歴がすべてGitHub上で公開されており、 言語設計プロセスの透明性という点でも画期的です。

理解度チェック

問題 0 / 50%
Q1

Anders Hejlsbergが設計に関わった言語として正しい組み合わせはどれですか?

キーボード: 1〜4 で選択、Enter で回答