首页 > 解决方案 > 复合模式,它可以用于 DailyPay(叶子)和 PayPeriod(复合)吗?

问题描述

由于我对设计模式还很陌生,并试图在我的个人项目中实现其中的一些,所以我很困惑复合模式是否适用于我的使用。我正在尝试计算一天的工资并将其存储在一个支付周期中。DailyPay 是我的“叶子”,PayPeriod 是我的“复合”。

这样做是否有意义?在这种情况下,我正在计算拖拉机拖车司机的工资,他们按停站、里程和拖车掉落获得报酬。然后尝试跟踪 7 天的工资并计算每周工资,然后计算每月工资。

标签: design-patterns

解决方案


我应该使用复合模式吗?

复合模式是一种抽象,它假定另一个抽象的接口仅将请求转发到所述接口的多个实例。它不仅用于树木,尽管 GoF 书籍在这种情况下使用它:

  • 它可以在任何你想用一个组代替一个单数的地方使用,反之亦然。

考虑一下:

复合图案

客户端需要一个IPayPeriod. 汇总来自s 的WeeklyPayPeriod净工资。DailyPayPeriod


推荐阅读