DBのtable設計の大まかな流れ
具体的にどういう手順でtable設計していくか
この時点で、domain modelingは終わっている状態
ER図の生成と、DBの変更を同時にできるようなツールを使いたい
これぐらいなら他のsql clientでもできるのでは?
mermaidで書いて、DBに移すのバカバカしいmrsekut.icon
ざっと作る
大きいまとまりでEntityを抽出する
この際に、細部を見ない
が、アイディア自体はメモっておく
正規化できているか確認して修正
immutable data modelになっているか確認して修正
アンチパターンを踏んでいないか確認して修正
↑論理設計
実際に定義する
物理設計
制約を意識する
全tableの全columnにnot null制約がつくのが理想的
ちゃんと正規化できていると↑の2つはつけられるはず
table設計をできるだけ後回しにしたいmrsekut.icon
clientの実装を始めたあとから考えても良いのでは?という気もする
domain modelの方が比較的変更も容易だし、そこで知識も増えそう
特に、コト
ざっくりぐらいはやっていても良いかもだが
できるだけ、mockで時間を稼ぎたい
ただ、SQLを書いて初めていびつさに気付く、というケースもありそうではある
実装期間のどれぐらいのタイミングで実物を定義するか問題mrsekut.icon
例えば半年間かいはつできるよって、時に、1ヶ月目から作っちゃうのか、3ヶ月過ぎたあたりで作るのか