TypeScript
| この項目「TypeScript」は途中まで翻訳されたものです。(原文:英語版 "TypeScript" 16:59, 6 December 2012 (UTC)) 翻訳作業に協力して下さる方を求めています。ノートページや履歴、翻訳のガイドラインも参照してください。要約欄への翻訳情報の記入をお忘れなく。(2013年1月) |
![]() |
|
| パラダイム | マルチパラダイム: スクリプト, オブジェクト指向, 構造化, 命令型, 関数型, ジェネリック |
|---|---|
| 登場時期 | 2012年10月1日[1] |
| 設計者 | マイクロソフト |
| 開発者 | マイクロソフト |
| 最新リリース | 1.5 / 2015年7月20日[2] |
| 影響を受けた言語 | JavaScript, Java, C# |
| ライセンス | Apache License 2.0 |
| ウェブサイト | www.typescriptlang.org |
| 拡張子 | .ts |
TypeScript はマイクロソフトによって開発されたフリーでオープンソースのプログラミング言語である。TypeScript は JavaScript に使用するかどうかが任意の静的型付けとクラスベースオブジェクト指向を加えたスーパーセットとなっている。C# のリードアーキテクトであるアンダース・ヘルスバーグが TypeScript の開発に関わっている。 [3][4][5][6]
TypeScript は JavaScript の構文の拡張なので、既存の JavaScript のプログラムにわずかな修正を加えるだけでTypeScriptとして動作する。 TypeScript は大規模なアプリケーションの開発のために設計されており、互換性を確保するためコンパイルすると JavaScript を出力する。 [7]
TypeScriptは既存のJavaScriptライブラリに型情報を加えることのできるヘッダファイルをサポートしており、jQuery や Node.jsといったよく知られたライブラリに対しても型情報の恩恵をもたらすことができる。
背景[編集]
より大規模な JavaScript アプリケーションの開発における必要性から TypeScript は生まれた。マイクロソフトの関係者によれば、内部のみならず外部の顧客も JavaScript でコードを構成する際の問題について述べていたという。
JavaScript へとコンパイルするように設計された言語には、ほかにも CoffeeScript や Script# (scriptsharp)などが存在する。これらの言語の欠点として、サポートがなければそれらの言語から JavaScript 特有の言語機能を使うことができないかもしれないというものがある。この欠点を解決するために、CoffeeScript はインラインで具体的な JavaScript を埋め込むことができるようになっている。
マイクロソフト内では、複雑な JavaScript ソースコードの取り扱いの難しさは、JavaScript でコンポーネントを書くことを容易にするカスタムなツールへの要求へとつながった。標準やクロスプラットフォームサポートにおける互換性を破たんさせるようなものを作るという意図があったわけではないとマイクロソフトは述べている。現在の ECMAScript 言語標準の提案が将来的にクラスベースオブジェクト指向のサポートを付け加えようとしていることは知られているが、マイクロソフトはその提案を実装することを決定した。これにより、その提案に基づいたスーパーセットであり、拡張部分を一般的な JavaScript へと変換するような、構文的な言語拡張がある JavaScript コンパイラへと至ることとなった。この意味では TypeScript は ECMAScript 6 において期待されている機能を先取りするようなものであるともいえる。
ECMAScript の提案にないが TypeScript に独自に搭載された機能として、言語の静的解析やツールのサポートを強化し快適な開発環境を提供できるようにする、使用するかどうかを選択可能な静的型付けがある。
言語の特長[編集]
TypeScript は JavaScript (ECMAScript 5) に次のような言語機能の拡張を加えたものである。
ECMAScript 6 由来
ECMAScript 7 由来
- デコレーター
独自
- 型注釈(変数・引数・戻り値などの型宣言)とコンパイル時の型チェック
- 型推論
- インターフェイス
- 列挙型
- Mixin
- ジェネリック
- タプル
- 共用体型
- 型ガード:if文の instanceof などを利用した型推論
- 型エイリアス
構文的には、静的型付けやクラス、継承、インターフェイスのようなオブジェクト指向、名前空間などの機能を追加する、ECMA-262 言語標準のマイクロソフトによる実装である JScript.NET と TypeScript はよく似ている。
統合開発環境[編集]
以下の統合開発環境などが TypeScript に対応している。
- Microsoft Visual Studio - 2013 Update 2 から標準搭載
- JetBrains 社
- Microsoft Visual Studio の ReSharper プラグイン[9]
- IntelliJ IDEA, WebStorm
- Eclipse TypeScript プラグイン[10]
DefinitelyTyped[編集]
既存の JavaScript ライブラリに対する型付けが http://definitelytyped.org/ にて公開・管理されている。
関連項目[編集]
注釈[編集]
- ^ TypeScript - Download: TypeScript 0.8.0
- ^ Announcing TypeScript 1.5 - TypeScript - Site Home - MSDN Blogs
- ^ Microsoft takes the wraps off TypeScript, a superset of JavaScript | ZDNet
- ^ TypeScript: JavaScript Development at Application Scale - Somasegar's blog - Site Home - MSDN Blogs
- ^ Microsoft TypeScript: Can the father of C# save us from the tyranny of JavaScript? | ZDNet
- ^ Microsoft Augments Javascript for Large-scale Development CIO.com
- ^ Microsoft TypeScript: the JavaScript we need, or a solution looking for a problem? | Ars Technica
- ^ http://techcrunch.com/2012/10/01/microsoft-previews-new-javascript-like-programming-language-typescript/
- ^ The Most Intelligent Extension for Visual Studio :: ReSharper - C#, VB.NET, LINQ, ASP.NET, ASP.NET MVC, XAML, XML, JavaScript, HTML, build scripts. Best-of-breed tools for code refactoring, code quality analysis, code cleanup, navigation, code generation, unit testing, and code templates.
- ^ palantir/eclipse-typescript - GitHub
外部リンク[編集]
|
||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
