集約と集約ルートとエンティティと永続化の違いとかわかりやすく

集約と集約ルートとエンティティと永続化の違いとかわかりやすく

DDD関連の英語のドキュメントを読んでいてaggregate(集約)という言葉が出てきて、そもそも集約の意味わからなかったので自分なりに色々出てくる言葉を意訳してみました。

エンティティ

エンティティはテーブルのこと。1対1。

永続化

どこかに保存すること。データベースとかファイルとか。

集約

英語のドキュメントではaggregateと出てくる。日本語訳で集約。

一つにまとめること。 多くのものを集めて、整理してまとめあげること。

テーブルのまとまりみたいなイメージ。

注文ヘッダテーブルと注文明細テーブル、関係は1:n。

注文ヘッダがあれば、必ず注文明細もある。片方だけレコードがある、なんていうことがない。

集約ルート

注文ヘッダテーブルと注文明細テーブルのうち、注文ヘッダテーブルが集約ルートを指している。

集約ルートは、集約の中で1つだけ。

集約ルートから操作することで集約全体の整合性を保ち…みたいな文章は、おそらく集約ルートが公開する登録・更新・削除・取得から集約(ここでいう注文明細テーブル)も登録・更新・削除・取得してください、という意味。

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました