哪个 class 应该做这项工作?
Which class should do the work?
我正在为我的论文构建一个销售系统,我在设计中一直与自己争论,class 应该做这个工作?
所以从这 3 个 classes;
设施Class - 这个class是其他人和GUI
之间的中心class协调者
产品Class - 表示产品的详细信息
销售额Class - 表示多个项目的销售额
关于销售产品,我的大问题是:
"Which class should calculate the total price"。设施 class 或销售 class?
什么是最佳做法?
提前致谢
我认为,作为一般规则,设施或经理 class 应该 始终 仅充当用户和其他人之间的缓冲区 classes,这让我说你应该把总价计算在销售额 class.
销售 class 最初是为处理多件商品的销售而设计的,这意味着应该有一种方法 returns 所有商品的价格当前购物车的商品合并,然后传给接口class显示。
如果考虑MVC的话,Model是Product和Sales,Controller是Facility,View就不说了。
如果这应该是一个设计合理的解决方案,您将添加一个服务层,它将完成实际工作。
所以模型保留数据,视图显示数据,控制器在模型和视图之间编排数据,服务层将对数据执行业务逻辑(预订)。
还有一个变体,其中视图有一个特定的视图模型 class,它将专门为视图准备数据和收集数据。但对于你的情况,这并不重要。
我的第一个冲动是 根据他们的职责 对这些 class 进行排序 关于模型-视图-控制器设计(因为您提到了 GUI 和接口 class 到它)。
Facility
- 根据您的说法,它是一个 控制器,它将 GUI(视图)连接到您的数据(模型)。
Product
- 这是一个模型 class,因为它包含数据和业务逻辑。
Sale
- 这个class连接到多个Products
并且多个Products
共享同一个Sale
,因为一个产品可以销售超过一次(这是一个假设)并且一次销售可以包括多种产品。也是模特class.
由于 Sale
class 代表多个产品 并且您感兴趣的是(例如)各个价格的 总和 这些产品中,这将是存储该方法的地方。
我正在为我的论文构建一个销售系统,我在设计中一直与自己争论,class 应该做这个工作?
所以从这 3 个 classes;
设施Class - 这个class是其他人和GUI
之间的中心class协调者产品Class - 表示产品的详细信息
销售额Class - 表示多个项目的销售额
关于销售产品,我的大问题是:
"Which class should calculate the total price"。设施 class 或销售 class?
什么是最佳做法?
提前致谢
我认为,作为一般规则,设施或经理 class 应该 始终 仅充当用户和其他人之间的缓冲区 classes,这让我说你应该把总价计算在销售额 class.
销售 class 最初是为处理多件商品的销售而设计的,这意味着应该有一种方法 returns 所有商品的价格当前购物车的商品合并,然后传给接口class显示。
如果考虑MVC的话,Model是Product和Sales,Controller是Facility,View就不说了。
如果这应该是一个设计合理的解决方案,您将添加一个服务层,它将完成实际工作。
所以模型保留数据,视图显示数据,控制器在模型和视图之间编排数据,服务层将对数据执行业务逻辑(预订)。
还有一个变体,其中视图有一个特定的视图模型 class,它将专门为视图准备数据和收集数据。但对于你的情况,这并不重要。
我的第一个冲动是 根据他们的职责 对这些 class 进行排序 关于模型-视图-控制器设计(因为您提到了 GUI 和接口 class 到它)。
Facility
- 根据您的说法,它是一个 控制器,它将 GUI(视图)连接到您的数据(模型)。Product
- 这是一个模型 class,因为它包含数据和业务逻辑。Sale
- 这个class连接到多个Products
并且多个Products
共享同一个Sale
,因为一个产品可以销售超过一次(这是一个假设)并且一次销售可以包括多种产品。也是模特class.
由于 Sale
class 代表多个产品 并且您感兴趣的是(例如)各个价格的 总和 这些产品中,这将是存储该方法的地方。