妙用策略模式
在成本分配中,会根据各种分配标准来分配费用或数量,而分配标准是由多种预设的或自定义的分配标准单元来定义的。每个分配标准单元定义了一种成本对象的取值方法。分配的基本公式是:
S * r = x, r = Di / (D1+...Dn)。其中S为总的待分配值,通常已知, r 为分配系数,各成本对象的系数等于各个的标准值Di除以总的标准值之和。x 是要求的各成本对象所分配的值。这种方式可以称为变动的分配系数法 ,与成本会计教科书上的方法(可称为固定的分配率法 )是等价的。可见,实现这种算法的关键是对采用不同分配标准的的成本对象,计算出其分配系数r。而对于r来说,其计算方法是变化的,正好应用策略模式来实现。
策略模式的的关键特征有
意图:可以根据所处上下文,使用不同的业务规则或算法。
问题:对所需算法的选择取决于发出请求的客户或者要处理的数据。
解决方案:将对算法的选择和算法的实现相分离。允许根据上下文进行选择。
--是这摘录自《设计模式解析》上的一小段。实际应用中咱们这样实现的:
策略模式很符合针对接口编程,给软件的可扩展性和可维护性带来了很好的效果,实际中应该尽量捕捉这类需求。