tableの依存関係を逆転する
例えば以下の様なDomain Modelを考える
productは複数種類あるので、その構造によってtableを分けている
table:A
id name price height width
table:B
id name price length
table:C
id name price product_code
この時に、orderlineはどうやって定義するか?
OrderLine → A,B,Cという依存関係
table:orderline
id order_id A_id B_id C_id
ProductはProductで完結している
つまり、ProductとOrderLineの関係性が疎になる
ProductはOrderLine以外からも依存される場合に適している
A,B,C→OrderLineという依存関係
各Productのcolumnにorderline_idを持たせる
table:A
id name price height width orderline_id
各Productが、OrderLineとして使用されることを前提とした形になる
ProductがOrderLineと密結合する
Productを、OrderLine以外のものか依存しづらくなる
こちらを採用する場合は命名を工夫して、AProductじゃなくて、AOrderLineとかにするべきだろうmrsekut.icon
orderlineとして使うことを明示する