🕗
[読書メモ]オブジェクト設計スタイルガイド 6章2節 with TypeScript
オブジェクト設計スタイルガイドを読みながら、TypeScriptでやるならどうやるかを考えながら書きました。
要約的に読める内容になっていると思うので、サクッと3分ぐらいで読める記事となっています。
6.2 クエリメソッドでは単一の型の戻り値を持つ
メソッドを使用する側の気持ちになろうといった話。
NG:使う側のハンドリングが大変
isValid(id: string): string | number {
}
▲:ちょっと使いにくい
getUserById(id: string): User | null {
if (!id) {
return null
}
return new User()
}
OK:例外を返すと良い
getUserById(id: string): User {
if (!id) {
throw new Error()
}
return new User()
}
OK:空配列を返すなど
listUsersById(id: string): User[] {
if (!id) {
return []
}
// .. 略
}
Discussion