LoginSignup
1
0

More than 3 years have passed since last update.

TypeScript 入門

Last updated at Posted at 2020-03-05

TypeScript はマイクロソフトによって開発され、メンテナンスされているフリーでオープンソースのプログラミング言語である。
TypeScriptはJavaScriptに対して、省略も可能な静的型付けとクラスベースオブジェクト指向を加えた厳密なスーパーセットとなっている。
TypeScriptはクライアントサイド、あるいはサーバサイド (Node.js) で実行されるJavaScriptアプリケーションの開発に利用できる。

TypeScriptは大規模なアプリケーションの開発のために設計されている。

TypeScriptはJavaScriptのスーパーセットであるため、既存のJavaScriptプログラムは、全て有効なTypeScriptプログラムとなる。

TypeScriptは型定義ファイルをサポートしており、既存のJavaScriptライブラリに型情報を付与して利用できる。既存のオブジェクトファイルの構造を記述できるC/C++のヘッダファイルとよく似た仕組みである。これによって、その型定義ファイル内で定義された値を、他のプログラムがあたかも静的に型付けされたTypeScriptエンティティであるかのように利用することができるようになる。jQuery、MongoDB、D3.jsのような人気のあるライブラリのための、サードパーティーのヘッダファイルがある。Node.jsベーシック・モジュールのためのヘッダも入手可能で、Node.jsプログラムの開発もTypeScriptの中で行える[7]。

TypeScriptの主要な実装は、自身もTypeScriptで書かれた、JavaScriptへのトランスコンパイラである。ライセンスはApache 2 License。

TypeScriptはMicrosoft Visual Studio 2013 Update 2以降でfirst-classプログラミング言語として、C# やその他のマイクロソフト言語群とともに含まれるようになった[8]。 公式の拡張パックによりMicrosoft Visual Studio 2012 でも TypeScript をサポート可能である[9]。

言語の特徴

TypeScriptはJavaScript (ECMAScript 5) に次のような言語機能の拡張を加えたものである。

ECMAScript 6由来
●クラス
●アロー関数式(ラムダ式)
●オプション引数、デフォルト引数
●let, const
●テンプレート文字列 : 文字列内への変数埋め込み
●モジュール[26]
●for/of
●分割代入
●Symbol

ECMAScript 7由来
●デコレーター
●Async/Await

独自

●型注釈(変数、引数、戻り値などの型宣言)とコンパイル時の型チェック
●型推論、型ガード - if文の instanceof などを利用した型推論
●インタフェース
●列挙型
●Mixin
●ジェネリック
●名前空間
●タプル型
●共用体型, 交差型(英語版)
●型エイリアス
構文的には、静的型付けやクラス、継承、インタフェースのようなオブジェクト指向、名前空間などの機能を追加する、ECMA-262 言語標準のマイクロソフトによる実装である JScript.NET と TypeScript はよく似ている。

コンパイラ
TypeScriptコンパイラtsc自体もTypeScriptで作成されている(セルフホスティング)。これは通常のJavaScript にコンパイルでき、任意のホスト上のJavaScriptエンジン(たとえばブラウザなど)上で実行できる。ライセンスは Apache License 2.0である。コンパイラ・パッケージはコンパイラを実行出来るスクリプトホストに同梱されてくる。Node.js等と共にコンパイラ・パッケージとして配布される場合もある。

また、JavaScriptで書かれたクライアントサイドのコンパイラのアルファ版もある。これはページロード中にTypeScriptコードを実行する[32]。

TypeScriptで書いたコードをブラウザ上で実行するにはコンパイルが必要。

tsc --strict -t es5 *.ts

開発環境

以下の統合開発環境 (IDE) やテキストエディタがTypeScriptに対応している。

●Microsoft Visual Studio
●2013 Update 2から標準搭載
●JetBrains社によるReSharperプラグイン[33]
●Visual Studio Code
●WebMatrix
●IntelliJ IDEA, WebStorm
●Eclipse - Eclipse TypeScript Plug-in, TypEcs
●NetBeans - NetBeans TypeScript Editor
●テキストエディタ - Sublime Text, Emacs, Vim
●クラウド型IDE - Cloud9 IDE, Codenvy, Codeanywhere

中文使用手册
https://typescript.bootcss.com/

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0