TypeScript単語


ニコニコ動画でTypeScriptの動画を見に行く
タイプスクリプト
2.5千文字の記事
  • 0
  • 0pt
掲示板へ

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回に固定するローリングリリース方式が導入された。

altJSの最有力候補(2022年3月現在)

JavaScriptはブラウザで実行可能なため、スクリプト言語としては最も普及しているプログラミング言語である。しかし、最初の開発理由がHTMLにちょっとした動的要素を加えることであったため、本格的なプログラミングに使おうとすると色々な弊害があるとされている。その弊害を回避するためには新しいプログラミング言語に変更するしかない。そういった背景からaltJS(alternative JavaScript: JavaScriptの代替案)の必要性が叫ばれるようになった。

CoffeeScriptやDartなど様々な言語が提唱され群雄割拠の状態であったが、2014年〜2015年にかけてMicrosoft社の提唱するTypeScriptが急速に勢力を伸ばすようになった。

特長

静的型付け

"Type"Scriptというだけのことはあって、JavaScriptが動的型付けであるのに対してTypeScriptは静的型付けであることが最大の特色。「動的型付けはちょっとした処理を記述するのには手軽だが、大規模開発には不利になる」という、型付けで主流を占めつつある考え方に沿ったもの。

JavaScriptとの互換性の関係で動的型付けも使える。

JavaScriptの上位互換

JavaScriptとの上位互換性があり、JavaScriptのコードはそのままTypeScriptのコードとして使うことができる。

これにより、既存の豊富なJavaScriptのライブラリが利用可能になった。型情報に関するファイルを別途必要とするようだが、メジャーなライブラリについてはすでに型情報のファイルが提供されている。

JavaScriptに変換して実行

他のaltJSの対抗馬同様に、実行するときはJavaScriptにコンパイル(トランスパイル)されてから実行される。

つまり、各種ブラウザで実行可能なコードを書くことができるのだ。もっとも当面のターゲットはサーバーサイドの大規模開発なので、主な実行環境はNode.jsだと思われる。

オープンソース

Microsoft社が中心になって推進しているが、オープンソースである。TypeScript向けの統合開発環境Visual Studio Code(Visual Studioとは別物)もオープンソースなので開発環境は無料で手に入る。Visual Studioでも開発可能である(無償版 Visual Studio Communityもある)。

営利企業だからいつかフリーミアム化したりするんじゃないかという疑念もわくが、一旦オープンソースにしたものを、再びクローズドに戻したり、収益化しようとしたりする試みは、どこの会社でもたいてい失敗しているので、ある程度信頼してもいいのではないだろうか。

ECMA標準に準拠

ECMAScript2015の仕様も、ドラフトの段階から積極的に取り込みを行っていた。ECMAScriptにTypeScriptと互換性が取れない仕様が追加されたらどうなるんだろう。

逆にTypeScriptの仕様のいくつかはECMAに提案として出されており、将来的にはECMAScriptの次期バージョンになることを目指しているのかもしれない。実際、2022年3月には、MicrosoftからECMAに対してJavaScriptに(TypeScript互換の)型アノテーションを導入する提案がなされexitている。

採用事例

既存のJavaScriptでの開発がTypeScriptに移行するケースも多い。

Visual Studio Code

Microsoftのプログラミング向けエディタであるVisual Studio Codeは、TypeScriptで開発されている。TypeScript向けの開発環境がTypeScriptで開発されるという閉じたエコシステムが形成されている。

Angular

GoogleはTypeScriptに対抗してAtScriptというものを2014年10月頃から提唱していたが、2015年3月5日に、Google自身が主導するWebフレームワーク AngularJS 2の開発言語としてTypeScriptを採用exitした。この際、AtScriptの機能はTypeScriptに吸収された。

Deno

Node.jsに代わる新しいJavaScriptエンジンとして開発されたDenoでは、TypeScriptがそのまま実行可能なように設計されている。

Office Script

ExcelのWebアプリ版であるExcel on the Webというものがあるが、これのマクロ機能であるOffice ScriptにはVBAではなくTypeScriptが用いられているexit。もっともExcelに関して言えばPower FXexitというExcelの関数を流用した言語もあるので、デスクトップ版で採用されていないOffice Scriptが今後どうなっていくかは不透明ではある。

関連動画

関連商品

関連項目

外部リンク

関連記事

親記事

子記事

  • なし

兄弟記事

  • 0
  • 0pt
記事編集 編集履歴を閲覧

ニコニ広告で宣伝された記事

ゆっくり人狼 (単) 記事と一緒に動画もおすすめ!
提供: アーク13
もっと見る

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

TypeScript

1 ななしのよっしん
2016/06/19(日) 12:21:16 ID: O/wwFL5w0D
最近javascriptを勉強し始めたのは
タイミングがいいのか悪いのか

TSはソースコード暗号化できるといいなあ
👍
高評価
0
👎
低評価
2 ななしのよっしん
2018/12/30(日) 19:38:18 ID: f3IgPAAlhP
>>2 暗号化って何?難読化のこと?
👍
高評価
0
👎
低評価
3 ななしのよっしん
2019/07/27(土) 05:27:42 ID: 4HeCUiuMGl
TypeScript、VSCodeで書くときマジで型の補完が気持ち良すぎてJSに戻れなくなる
👍
高評価
1
👎
低評価
4 ななしのよっしん
2023/10/11(水) 18:25:00 ID: z1E+lOqtbw
整数型が欲しい
👍
高評価
0
👎
低評価
5 ななしのよっしん
2024/04/06(土) 20:01:08 ID: c4csBnh+Vg
未定義の値にいちいちエラーひっかかるのが面倒
特にnumber型
👍
高評価
0
👎
低評価
6 ななしのよっしん
2025/03/05(水) 20:41:57 ID: auugDGjTPc
トランスパイル後のJS見ると何やってるかわかんなくて笑った
もう素JSには戻れないわ⋯
👍
高評価
0
👎
低評価
7 ななしのよっしん
2025/03/12(水) 15:50:54 ID: DVXwPjIGNP
👍
高評価
0
👎
低評価