JavaScriptに静的型付けとクラスベースオブジェクト指向を導入し、大規模なアプリケーションの開発を容易にすることを目的としてMicrosoftによって開発されたオープンソースのプログラミング言語。

TypeScriptはJavaScriptのスーパーセットであり、すべてのJavaScriptコードはそのままTypeScriptとしても機能する。

TypeScriptの主な特徴

  1. 静的型付け: 変数、関数の引数、オブジェクトのプロパティなどに型を定義できる。これにより、コンパイル時に型の不一致や潜在的なエラーを検出できる。

  2. クラスとインターフェース: クラスベースのオブジェクト指向プログラミングをサポートし、インターフェースを使用してオブジェクトの形状を定義できる。

  3. 高度な型システム: ユニオン型、ジェネリックス、インターセクション型、タプルなど、JavaScriptにはない高度な型システムを提供する。

  4. モジュールサポート: ES6のモジュール機能をフルにサポートし、名前空間を使用してコードを整理できる。

  5. ツールチェーンのサポート: TypeScriptは、Visual Studio、Visual Studio CodeなどのIDEやエディタで広くサポートされており、リファクタリングやインテリセンス(コード補完)、型チェックなどの強力なツールを提供する。

  6. トランスパイラ: TypeScriptコードはトランスパイラによってJavaScriptに変換される。これにより、古いブラウザや環境でもTypeScriptで書かれたコードを実行できる。

  7. エコシステム: DefinitelyTypedなどのコミュニティ駆動の型定義リポジトリがあり、多くのJavaScriptライブラリやフレームワークの型定義を提供している。