2021-03-11 :-|
_ 3. Low-Code Development by texta.fm
データモデリングの話題
- CRUDしない
- リソースとイベントとして捉える
- UPDATE: データ改ざん
- DELETE: データ削除
- イベントを記録する(「○○履歴」というのを管理するわけではない)
- モードを分ける
- 論理設計: 理想
- 物理設計(実装): 現実
- 「パーフェクトRuby on Rails」ドメインロジックの置き場所として困る例: 銀行の口座間の送金
- 口座間の送金を送金元と送金先のどちらの責務にするか
- よし、「サービス」だ→マテ
- 違和感があるのは事実を捉えられていないかもしれない臭いだ
- 送金は口座が持つべき?
- 送金は事実である
- 事実としてデータに残るべき
- モデリングされてデータベースのテーブルに入るべき
- Rails のコードが複雑になるということはモデリングがうまくいっていない