我可以向用户类添加函数addtocart(),removefromcart(),createorder(),executeorder()吗?

时间:2018-09-27 20:15:27

标签: oop ooad

我正在尝试构建eshop应用程序,这是我的类图class diagram uploaded to https://i.stack.imgur.com/qGhLz.png

我已经给班级分配了职责和功能,但是对我来说,班级用户如何与订单和购物车类进行交互并不明显。例如可以向用户类添加函数addtocart(),removefromcart(),createorder(),executeorder()等吗?对我来说,问题在于这些功能与用户类别的职责无关,但另一方面,它们之间存在某种组合关系,并且在某种程度上用户类别应如何使用购物车和订单类别。 提前致谢。

1 个答案:

答案 0 :(得分:0)

您需要将此设计分为子系统:客户管理,账单,目录,订单,付款和购物。

您还需要子系统来管理用户界面和管理数据存储,但是通常您具有用于简化其实现的库和框架(例如MVC和持久性框架)。

您可能最终会获得在不同子系统中相似的类(例如,客户管理中和顺序中的“客户”),但是您还需要考虑这些类在这些不同的上下文中扮演不同的角色。

我不是DDD的忠实拥护者,但是它很容易介绍应用程序分区。