gpt4 book ai didi

oop - ddd : Entity or VO

转载 作者:行者123 更新时间:2023-12-04 00:44:34 26 4
gpt4 key购买 nike

假设我有一个 Passenger 对象,它应该包含 Passport(政府 ID)对象。我正在从 PassengerRepository 获取 PassengerPassengerRepository 向服务器创建请求并获取数据 (json),然后解析接收到的数据并存储在存储库中。

我很困惑,因为我想将 Passport 存储为实体并将其放入 PassportRepository 但是关于密码的所有信息都包含在 json 中,而不是我上面收到的。

我想我应该使用 Passport 作为 VO 并将其放在 Passenger (聚合)对象中。或者我可以创建一个包含 PassengerRepositoryPassportRepositoryPassengerService

有什么想法吗?

最佳答案

值对象是由它们的属性定义的对象——具有相同属性值的两个实例本质上是相同的值。如果这对于您的 Passport 类型是正确的,那么它应该是 VO。

如果它确实是一个 VO,那么你就被排序了——它只能通过聚合访问。

但是,如果情况并非如此,并且在您的域中,护照的身份无论属性如何更改(例如,某人更改了他们的名字)都保持不变,那么您需要考虑是否在您的域中Passport 实体只有在附加到 Person 时才有意义。如果它们只在这个上下文中有意义,那么它们也应该只能通过聚合访问。

关于oop - ddd : Entity or VO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13270345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com