2️⃣
[読書メモ]オブジェクト設計スタイルガイド 8章2節 with TypeScript
オブジェクト設計スタイルガイドを読みながら、TypeScriptでやるならどうやるかを考えながら書きました。
要約的に読める内容になっていると思うので、サクッと3分ぐらいで読める記事となっています。
8.2 ユースケースに特化したリードモデルを作成する
以下のようにすると、結局ループしてデータを作成している。
リードモデルを作成する意味がなくなってしまう。
function execute(request: any) {
const allOrders = this.repository.findAll();
const forStockReport = allOrders.map((order) => {
return {
id: order.id,
product: order.product,
quantity: order.quantity,
price: order.price,
};
}
return new JsonResponse(forStockReport);
}
以下のようにすると、リードモデルを作成する意味がある。
function execute(request: any) {
const stockReport = this.repository.getStockReport();
return new JsonResponse(stockReport);
}
Discussion