比如说,我们想建立一些像订票这样的系统(订票不是这里的关键,只是一个例子)所以我们有一个用户类,票证类等等我们还有一个ticketservice类,它提供bookticket()cancelticket()等方法在类图中,是否应该包含ticketservice?如果不是,那么bookticket()或cancelticket()应该在类图上的什么位置显示,在ticket类或user类中(因为用户创建了ticket)
zpqajqem1#
这取决于你想表现什么。如果您希望在类图中忠实地表示您的代码,那么是的;如果您只是想解释您的业务域(即域中的业务实体)的逻辑,而不想看到杂乱无章的内容,那么不可以删除服务类。这是基于主观/观点的,取决于你需要做什么。如果您想避免使用服务类,但是希望用行为表示域的逻辑,那么您可以简单地向ticket类添加“book()”和“cancel()”操作。这将是面向对象的标准方法,即在负责它的对象中封装行为(和数据)。
1条答案
按热度按时间zpqajqem1#
这取决于你想表现什么。如果您希望在类图中忠实地表示您的代码,那么是的;如果您只是想解释您的业务域(即域中的业务实体)的逻辑,而不想看到杂乱无章的内容,那么不可以删除服务类。这是基于主观/观点的,取决于你需要做什么。
如果您想避免使用服务类,但是希望用行为表示域的逻辑,那么您可以简单地向ticket类添加“book()”和“cancel()”操作。这将是面向对象的标准方法,即在负责它的对象中封装行为(和数据)。