gpt4 book ai didi

design-patterns - 策略的替代模式

转载 作者:行者123 更新时间:2023-12-01 11:57:55 25 4
gpt4 key购买 nike

我有一段代码开始实现策略模式,如下所示:

IStrategy
StrategyA : IStrategy
StrategyB : IStrategy
StrategyC : IStrategy

该接口(interface)上只有一个 Calculate 方法。实现后,结果证明所有 3 个具体类型的 Calculate 方法代码和两个名称相同的 Properties 都具有相同的代码,只是设置了不同的值。

因此,为了消除重复,我将接口(interface)设置为抽象类,并将方法和属性向下移动,只需在具体类型的构造中使用它们各自的值设置基本属性。

现在我知道模式不是硬性规定,只是指导方针,但我已经把它从指导方针中扭曲了,我不禁认为还有另一种模式我应该看看?

任何人都可以建议任何其他方法,让我离开,这样就可以很容易地添加新的“策略”。事实证明,我们需要在其中一些新案例中改变逻辑,那么我该如何构建它,这样我就没有重复的代码,但有一个灵活的设计让我可以改变事情呢?

谢谢。

最佳答案

你为什么不创建一个 abstract class BaseStrategy具有所有通用功能的类,并以所有具体策略对其进行扩展?

关于design-patterns - 策略的替代模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5076035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com