实体价值和服务 类 是什么意思?
What are Entity Value and Service classes means?
我用谷歌搜索并尝试了很多在线链接来找出实体、值和服务 classes。但是什么也没找到。
有人可以用一个很好的例子来解释如何从 class 图中找出这样的 classes 吗?
以这个ClassDiagram为例
你的问题不太好回答,因为你的上下文不准确。
实体是 classes,其实例存储在数据库中,在您获得将 classes 存储在数据库中的三个常用规则之后。见 ORM
如果您在 JEE 上下文中,这些 classes 由 @Entity 注释(几乎)。
一点,class 图没有发现或找出 classes,class 图有助于为你的 classes 建模,而不是找到它们。
实体、值和服务似乎指的是 Domain Driven Design 上下文:
- entity 是一个对象,它有自己的身份,并且尽管其字段中的值可能发生修改,但仍保持其身份。
- a value object 是一个没有自己身份的对象。值对象由其字段的值定义。因此原则上它应该是不可变的。
- 一个service是一个不属于对象(实体或值)责任的操作。不要将 DDD 服务与服务层混淆
在你的图表中:
- 所有classes都有自己的ID,这表明它们都是实体。
User_vehicle
ssems 有一个错误的命名。应该叫"Subscription"。
User
和 Vehicle
似乎是聚合根,其他实体依赖于它们。 Maintenance
和 Schedule
似乎属于 Vehicle
集合。可以讨论 User_Vehicle
和 Reservation
属于 User
聚合还是 Vehicle 聚合。
- 值对象似乎没有明显的class。一个值对象不会有一个 ID 来确保它的身份。然而,有人可能会争辩说日期是值对象,即使图中没有明确表示。
- 也许我太老了,但我认不出这里有服务的证据。所有的方法似乎都清楚地由它们所属的对象负责。服务可以是 "Create reservation" 或 "Start subscribtion":在这两种情况下,这些都超出了单个对象的责任范围:它总是涉及至少两个实体。
我用谷歌搜索并尝试了很多在线链接来找出实体、值和服务 classes。但是什么也没找到。
有人可以用一个很好的例子来解释如何从 class 图中找出这样的 classes 吗?
以这个ClassDiagram为例
你的问题不太好回答,因为你的上下文不准确。
实体是 classes,其实例存储在数据库中,在您获得将 classes 存储在数据库中的三个常用规则之后。见 ORM
如果您在 JEE 上下文中,这些 classes 由 @Entity 注释(几乎)。
一点,class 图没有发现或找出 classes,class 图有助于为你的 classes 建模,而不是找到它们。
实体、值和服务似乎指的是 Domain Driven Design 上下文:
- entity 是一个对象,它有自己的身份,并且尽管其字段中的值可能发生修改,但仍保持其身份。
- a value object 是一个没有自己身份的对象。值对象由其字段的值定义。因此原则上它应该是不可变的。
- 一个service是一个不属于对象(实体或值)责任的操作。不要将 DDD 服务与服务层混淆
在你的图表中:
- 所有classes都有自己的ID,这表明它们都是实体。
User_vehicle
ssems 有一个错误的命名。应该叫"Subscription"。 User
和Vehicle
似乎是聚合根,其他实体依赖于它们。Maintenance
和Schedule
似乎属于Vehicle
集合。可以讨论User_Vehicle
和Reservation
属于User
聚合还是 Vehicle 聚合。- 值对象似乎没有明显的class。一个值对象不会有一个 ID 来确保它的身份。然而,有人可能会争辩说日期是值对象,即使图中没有明确表示。
- 也许我太老了,但我认不出这里有服务的证据。所有的方法似乎都清楚地由它们所属的对象负责。服务可以是 "Create reservation" 或 "Start subscribtion":在这两种情况下,这些都超出了单个对象的责任范围:它总是涉及至少两个实体。