大田区から発信するゆるゆる日記

主にITエンジニアに関する備忘録日記。たまに趣味も。何か不備があればコメント頂けると幸いです。Twitterアカウント https://twitter.com/ryuzan03

TypeScript

※下記の内容に不備がありましたら、コメント頂けると幸いです。また、下記の内容をご使用頂ける場合は自己責任でお願いします。

【目次】

 

背景

会社でAngularを使うので、TypeScriptの概要を理解するために記事を書きます。

自分用なので、クオリティは低いです。

 

TypeScript

TypeScriptとは?

マイクロソフトによって開発され、メンテナンスされているオープンソースプログラミング言語
JavaScriptで大規模なアプリ開発をする上での欠点を補うために開発された。ソースコードGitHubにある。

 

JavaScriptに対して、省略も可能な静的型付けとクラスベースオブジェクト指向を加えた厳密なスーパーセットとなっている。コンパイルするとJavaScriptを実行することになります。

 

C#のリードアーキテクトであり、アンダース・ヘルスバーグが開発に関わっている。

 

特徴

クライアントサイド、あるいはサーバーサイドで実行されるJavaScriptアプリの開発に利用できます。

 

①静的型付けが必要

【型の例】
・number型(数値)
・string型(文字列)
・boolean型(真偽値)
・any型(同じ変数に違う型の値を格納できるが、型チェックされないので要注意)

 

【型の記述方法】

・変数宣言

var 変数名:型名

・関数

function 関数名(引数名:引数の型):関数の戻りの型{}

 ※コードの冗長を避けたい場合は、「型推論」を使って型の宣言(型アノテーション)を省略することができる。

 

②クラスを定義し利用できる

C#の影響でクラスベースを取り入れているので、クラスを定義し利用できる。

 

③インターフェースを利用できる

インターフェースとは、「メンバーの名前と型が定義された抽象的な型」です。インターフェース自身はインスタンス化できないし、メンバー関数の中に処理を実装することもできない。あくまでも、コンパイル時にメンバーと型のチェックに使われる。

 

インターフェースはクラスの中で実装することで初めて使うことができます。また、変数宣言時などの型アノテーションとしても利用できます。

 

コンパイルすると、インターフェースはなくなります。

 

コンパイルすると、JavaScriptコードとしてメンテナンス可能

もしTypeScriptが廃れたとしても、ソースコードJavaScriptとして残すことができる。

 

 

今後に向けて

Angularの概要を勉強していきます〜