7️⃣
[読書メモ]オブジェクト設計スタイルガイド 1章1節 with TypeScript
初めに
オブジェクト設計スタイルガイドを読みながら、TypeScriptでやるならどうやるかを考えながら書きました。
要約的に読める内容になっていると思うので、サクッと3分ぐらいで読める記事となっています。
1章
初歩的な内容ばかりなので、各節のタイトルを見て説明できるなら飛ばしてok
1.1 クラスとオブジェクト
クラス:オブジェクトの動作定義をしたもの
インスタンスを生成すると、メソッドを呼び出すことができる
- オブジェクトメソッド:インスタンスに対してのみ呼び出せる
- スタティックメソッド:インスタンスなしでも呼び出せる
- コンストラクタ:オブジェクトの使用前に準備をするためのメソッド
- スタティックファクトリメソッド:クラスの新しいインスタンスを生成する方法
class Hello {
public hello() {
console.log("hello");
}
static hello() {
console.log("static hello");
}
constructor(name: string) {
if (!name) {
throw Error("名前が無いよ!");
}
}
static createDefault(): Hello {
return new Hello("名無し");
}
}
const K = new Hello("K"); // コンストラクタが使用される
// オブジェクトメソッド:インスタンスに対してのみ呼び出せる
K.hello();
// スタティックメソッド:インスタンスなしでも呼び出せる
Hello.hello();
try {
const ng = new Hello(""); // コンストラクタが使用される
} catch (e) {
console.log(String(e));
}
// スタティックファクトリメソッド:クラスの新しいインスタンスを生成する方法
const noName = Hello.createDefault();
noName.hello();
Discussion