値オブジェクトはどのようにデータベースに保存されますか? :
Company と Person の両方が同じメール アドレスを持っているとします。これらのステートメントのうち、有効と考えるものはどれですか?
1.「Company.Address を変更した場合、Person.Address にそれらの変更を自動的に取得させたい」
2.「Company.Address を変更しても、Person.Address に影響を与えてはなりません」
1 が true の場合、Address はエンティティである必要があります
2 が true の場合、Address は値オブジェクトである必要があります。
上記のモデルでは、メールAddress
をValue ObjectCompany
にするべきではありませんか?同じメールがあったとしてもPerson
、このメールにはまだ概念的なアイデンティティがないからです。
つまり、最初にinitial.address@gmail.comCompany
をPerson
共有し、その後new.address@gmail.comで新しいメールを取得した場合、代わりにメール アドレス initial.address@gmail.com自体は変更されていないと主張できます。 new.address@gmail.comに置き換えましたか?Company
Person
したがって、私の理解では、共有されている単なる事実Address
は、それに個性 (つまりアイデンティティー) を与えるのに十分ではありませんか?!
ありがとうございました