使用服务 classes 绘制 UML class 图
draw UML class diagram with Service classes
这是大系统的小场景。
我想在 class 图表中对这个场景进行建模,然后在代码中实现它
这是书里的场景store.there是客户和书
客户可以买书,按名字搜索书,阅读书
class 图以下列方式实现
1.put 对客户的所有操作 class 因为客户是执行这些操作的人
但是 buyBooks(),searchBook(),readBooks()
方法不负责改变客户的状态 class
(这些方法不适用于客户 class 内部的数据)因为它违反了基本的 oop 原则封装。
客户可以购买、搜索、阅读 1 本书或多本书,因此关联标记如图所示。
我在网上找了很多class图都是这样画的
2。
把所有的操作都交给客户class 同上。
并用三行单独标记每个关联
协会
- 客户可以购买一本或多本书
- 客户可以搜索一本或多本书
- 客户可以阅读一本或多本书
3.in 此处将所有操作放在服务 class 因为这些方法不负责更改两个客户的状态,book class
然后标记关联。
- 在这些论文中,哪一个是正确的 class 图?
- 在 uml class 图表中绘制服务 classes 是否可以接受?
我认为第一个或最后一个图表都可以工作(已更正),但我倾向于第一个实现。第二个完全错误。
我会使用第一个,因为 "Customer" 暗示一个人在系统中的唯一目的是与您的书互动 class,特别是考虑到您的多重性值表明客户必须与至少一本书 class 相关联。如果客户做的事情比与书籍互动更多,那么将客户对书籍所做的事情抽象为服务可能会很有用,但我认为这里没有必要。
现在,您的 class 图表语法已关闭。箭头应该是开放的(如 >
)而不是实心的。此外,您在 Book class 上的多重值似乎是错误的:如果尚未购买一本书实例,则可能有零个与之关联的客户,如果已经购买,则可能有一个与之关联的客户。如果是这样,您在书末的多重值应该是 0..1
.
最后,你的第二张图是错误的,因为关联是通过class而不是通过操作;您不会为每个操作设置一个关联,而是每个 class.
这是大系统的小场景。 我想在 class 图表中对这个场景进行建模,然后在代码中实现它
这是书里的场景store.there是客户和书 客户可以买书,按名字搜索书,阅读书
class 图以下列方式实现
1.put 对客户的所有操作 class 因为客户是执行这些操作的人
但是 buyBooks(),searchBook(),readBooks()
方法不负责改变客户的状态 class
(这些方法不适用于客户 class 内部的数据)因为它违反了基本的 oop 原则封装。
客户可以购买、搜索、阅读 1 本书或多本书,因此关联标记如图所示。
我在网上找了很多class图都是这样画的
2。 把所有的操作都交给客户class 同上。 并用三行单独标记每个关联
协会
- 客户可以购买一本或多本书
- 客户可以搜索一本或多本书
- 客户可以阅读一本或多本书
3.in 此处将所有操作放在服务 class 因为这些方法不负责更改两个客户的状态,book class
然后标记关联。
- 在 uml class 图表中绘制服务 classes 是否可以接受?
我认为第一个或最后一个图表都可以工作(已更正),但我倾向于第一个实现。第二个完全错误。
我会使用第一个,因为 "Customer" 暗示一个人在系统中的唯一目的是与您的书互动 class,特别是考虑到您的多重性值表明客户必须与至少一本书 class 相关联。如果客户做的事情比与书籍互动更多,那么将客户对书籍所做的事情抽象为服务可能会很有用,但我认为这里没有必要。
现在,您的 class 图表语法已关闭。箭头应该是开放的(如 >
)而不是实心的。此外,您在 Book class 上的多重值似乎是错误的:如果尚未购买一本书实例,则可能有零个与之关联的客户,如果已经购买,则可能有一个与之关联的客户。如果是这样,您在书末的多重值应该是 0..1
.
最后,你的第二张图是错误的,因为关联是通过class而不是通过操作;您不会为每个操作设置一个关联,而是每个 class.