8章クラス

Some functional devs

Try to never use classes

Too intense for me

関数型プログラマーの中には

決してクラスを使おうとしない人がいる

私からすると、あまりにも極端だ

……………………………………………………

 

TypeScriptが開発およびリリースされた2010年代の初期は、JavaScriptの世界が、現在とは大きく異なっていました。アロー関数やlet/const変数など、後にES2015で標準化されることになる機能は、まだ遠い将来の希望にすぎませんでした。Babelは、その最初のコミットまであと数年というところであり、その前身であるTraceurなど、新しいJavaScript構文を古い構文に変換するためのツールも、まだ広く受け入れられてはいませんでした。

TypeScriptの初期のマーケティングや機能セットは、そのような世界に合わせて仕立てられていました。TypeScriptの機能として、型チェックのほかに、そのトランスパイラーが——よく使われる例としてクラスを伴って——強調されていました。現在では、TypeScriptによるクラスのサポートは、JavaScriptのすべての言語機能をサポートするための数多くの機能の1つにすぎません。TypeScriptは、クラスの使用やJavaScriptでよく使われるその他のパターンの使用を、特に推奨も否定もしません。

8.1 クラスメソッド

概してTypeScriptは、独立した関数を理解するのと同じ方法でクラスのメソッドを理解します。つまり、型やデフォルト値が与えられていなければ、パラメーターはデフォルトでany型になり、メソッドを呼び出すには、適切な数の引数が必要になります。また、再帰関数でなければ、通常はその戻り値の型を推論できます。 ...

Get 初めてのTypeScript ―型安全なJavaScriptでWeb開発を加速する now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.