TypeScriptとはJavaScriptを拡張して静的型付けを可能にしたプログラミング言語である。
2012年ごろから開発が始まり、2014年4月2日にバージョン1.0のリリースとなった。
バージョン1.0以降は平均3ヶ月に1回くらいの速いペースでバージョンアップが行われていたが、2016年1月のバージョン1.8が出て以降は仕様追加は落ち着きを見せるようになり、2016年9月22日にバージョン2.0がリリースされた。
2017年2月にはバージョンアップ間隔を2ヶ月に1回に固定するローリングリリース方式が導入された。
JavaScriptはブラウザで実行可能なため、スクリプト言語としては最も普及しているプログラミング言語である。しかし、最初の開発理由がHTMLにちょっとした動的要素を加えることであったため、本格的なプログラミングに使おうとすると色々な弊害があるとされている。その弊害を回避するためには新しいプログラミング言語に変更するしかない。そういった背景からaltJS(alternative JavaScript: JavaScriptの代替案)の必要性が叫ばれるようになった。
CoffeeScriptやDartなど様々な言語が提唱され群雄割拠の状態であったが、2014年〜2015年にかけてMicrosoft社の提唱するTypeScriptが急速に勢力を伸ばすようになった。
"Type"Scriptというだけのことはあって、JavaScriptが動的型付けであるのに対してTypeScriptは静的型付けであることが最大の特色。「動的型付けはちょっとした処理を記述するのには手軽だが、大規模開発には不利になる」という、型付けで主流を占めつつある考え方に沿ったもの。
JavaScriptとの互換性の関係で動的型付けも使える。
JavaScriptとの上位互換性があり、JavaScriptのコードはそのままTypeScriptのコードとして使うことができる。
これにより、既存の豊富なJavaScriptのライブラリが利用可能になった。型情報に関するファイルを別途必要とするようだが、メジャーなライブラリについてはすでに型情報のファイルが提供されている。
他のaltJSの対抗馬同様に、実行するときはJavaScriptにコンパイル(トランスパイル)されてから実行される。
つまり、各種ブラウザで実行可能なコードを書くことができるのだ。もっとも当面のターゲットはサーバーサイドの大規模開発なので、主な実行環境はNode.jsだと思われる。
Microsoft社が中心になって推進しているが、オープンソースである。TypeScript向けの統合開発環境Visual Studio Code(Visual Studioとは別物)もオープンソースなので開発環境は無料で手に入る。Visual Studioでも開発可能である(無償版 Visual Studio Communityもある)。
営利企業だからいつかフリーミアム化したりするんじゃないかという疑念もわくが、一旦オープンソースにしたものを、再びクローズドに戻したり、収益化しようとしたりする試みは、どこの会社でもたいてい失敗しているので、ある程度信頼してもいいのではないだろうか。
ECMAScript2015の仕様も、ドラフトの段階から積極的に取り込みを行っていた。ECMAScriptにTypeScriptと互換性が取れない仕様が追加されたらどうなるんだろう。
逆にTypeScriptの仕様のいくつかはECMAに提案として出されており、将来的にはECMAScriptの次期バージョンになることを目指しているのかもしれない。実際、2022年3月には、MicrosoftからECMAに対してJavaScriptに(TypeScript互換の)型アノテーションを導入する提案がなされている。
既存のJavaScriptでの開発がTypeScriptに移行するケースも多い。
Microsoftのプログラミング向けエディタであるVisual Studio Codeは、TypeScriptで開発されている。TypeScript向けの開発環境がTypeScriptで開発されるという閉じたエコシステムが形成されている。
GoogleはTypeScriptに対抗してAtScriptというものを2014年10月頃から提唱していたが、2015年3月5日に、Google自身が主導するWebフレームワーク AngularJS 2の開発言語としてTypeScriptを採用した。この際、AtScriptの機能はTypeScriptに吸収された。
Node.jsに代わる新しいJavaScriptエンジンとして開発されたDenoでは、TypeScriptがそのまま実行可能なように設計されている。
ExcelのWebアプリ版であるExcel on the Webというものがあるが、これのマクロ機能であるOffice ScriptにはVBAではなくTypeScriptが用いられている。もっともExcelに関して言えばPower FXというExcelの関数を流用した言語もあるので、デスクトップ版で採用されていないOffice Scriptが今後どうなっていくかは不透明ではある。
掲示板
急上昇ワード改
最終更新:2024/11/29(金) 23:00
最終更新:2024/11/29(金) 22:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。