AUTHOR: schwarz1009
TITLE: TypeScript
BASENAME: 2021/01/11/151247
STATUS: Publish
ALLOW COMMENTS: 1
CONVERT BREAKS: 0
DATE: 01/11/2021 15:12:47
CATEGORY: TypeScript
TypeScriptについて勉強した。
TypeScriptの型は、number, boolean, string, any, voidなどを使う。
これを、変数なら変数名の後に、
関数定義なら引数名やカッコの後ろに、
コロンをつけて記述する。
配列はnumber[]とする。
オブジェクトの場合、interfaceを記述し、
それぞれの要素に型名を記述し、
名前を付けてDataObjectなどとし、
変数名の後に、このDataObjectを付ける。
この時、?を付けることで、
あってもなくても構わない要素とすることができる。
nullを許容するにはstring | nullとする。
明示的にnullを許容しない限り、
nullは許容されないため、
nullチェックをする必要はない。
そして、TypeScriptはJavaScriptのスーパーセットであり、
JavaScriptモジュールを利用できるが、
JavaScriptモジュールは当然ながらJavaScriptで書かれているため、
型情報がない。
このようなモジュールのために、
型定義ファイル(型宣言ファイル)が利用できる。
これはC言語のヘッダファイルのようなもので、
関数などが型とともに記述されている。
TypeScriptでは、
npmでモジュールを導入する際に、
モジュールだけでなく、
型定義ファイルも追加的にインストールする。
TypeScriptで書かれたtsファイルは、
tscでjsにコンパイルする。
たとえば、npx tscを使う。
この際に型チェックが行われる。
また、VS-Codeでは、
コードを書いている際に、
型が間違っている時にその部分を教えてくれる。
以上は、以下の動画を見て、自分なりに書きました。
TypeScriptでは、このほか、
列挙型、タプル型、ジェネリクス型、可変長引数、
などを利用できる。
また、TypeScriptでのオブジェクト指向では、
class文を用いて、
クラスベースのオブジェクト指向が可能。
クラスにはコンストラクタ、メソッド、プロパティがあり、
継承やオーバーライドも可能。
インスタンスをnewで生成でき、getやsetも使うことができる。
そして、インターフェースを使うことで、
メソッドやプロパティを必ず実装しなければならないように、
強制できる。
TypeScriptでは、インターフェースも型として扱われる。
以上は、以下の書籍を参考に執筆しました。
僕は、プログラマに向いていないと思う。
僕は、いろんなことの賢い部分を知りたいだけだ。
実際のプログラマは、
仕様を決めたら、役割分担をして、
一日8時間コードを書かないといけない。
プログラミング言語を書くだけの仕事だ。