8得票3回答
策略设计模式、泛型和类型安全性

我希望创建一个将策略模式和工厂结合起来的方案,但我希望它是类型安全的。目前为止我已经完成以下工作: public interface Parser<T> { public Collection<T> parse(ResultSet resultSet); ...

8得票2回答
模板方法和策略设计模式

这可能是一个新手问题,因为我刚接触设计模式,但我正在研究模板方法和策略DP,它们看起来非常相似。我可以阅读定义,检查UML并查看代码示例,但对我来说,策略模式似乎只是使用模板方法模式,但你恰好将其传递到对象中(即组合)。 而且,就此而言,模板方法似乎只是基本的OO继承。 我是否忽略了它们之...

7得票4回答
设计模式 - 策略模式

我是设计模式的初学者。 假设我正在开发一个C#应用程序,用于跟踪开发团队中各成员执行的开发工作(即项目跟踪器)。 我正试图受到策略模式的启发。 因此,我正在设计我的类和接口如下: interface IEmployee { void Retires(); void Ta...

14得票3回答
在Scala中有比策略模式更好的选择吗?

当我在编写 Java(或类似语言)程序时,我经常使用简单版本的策略模式,在代码中使用接口和实现类来提供运行时可选的特定概念的实现。 作为一个非常牵强的例子,我可能想在我的 Java 代码中拥有能够发出声音的动物的概念,并且希望能够在运行时选择动物类型。因此,我会编写如下代码:interfac...

119得票9回答
策略模式和依赖注入有什么区别?

策略模式和依赖注入都允许我们在运行时设置/注入对象。那么策略模式和依赖注入之间有什么区别?

8得票2回答
用状态/策略模式替换if/else逻辑

我已经阅读了以前有关Java中替换条件逻辑(如IF / ELSE)的Stack Exchange,例如状态/策略模式,但我不确定我的情况是否适合这种替换。以下是我查看的两个相关问题 - Java中的if语句列表 和 将许多“if else”语句转换为更简洁的方法 我基本上正在编写一个文件下载...

31得票2回答
使用Spring Bean的策略模式

假设我正在使用Spring框架,我有以下策略... 接口public interface MealStrategy { cook(Meat meat); } 第一策略@Component public class BurgerStrategy implements MealStra...

16得票7回答
如何在C#中使用策略模式?

这是我目前的代码:namespace Strategy { interface IWeaponBehavior { void UseWeapon(); } } namespace Strategy { class Knife : IWeapon...

10得票4回答
如何在C++中使用std::function实现策略模式

我正在了解如何在C++中实现策略模式的最佳方法。到目前为止,我一直使用标准方式,其中上下文具有指向基本策略类的指针,如下所示: class AbstractStrategy{ public: virtual void exec() = 0; } class Concrete...

12得票8回答
使用策略模式的好处在哪里?

我已经阅读了维基百科上关于这个解释的内容,尤其是C++示例,但是我没有认识到仅仅定义3个类、创建实例并调用它们的区别和那个示例。我看到的只是将另外两个类放入过程中,无法看出有什么好处。现在我确定我错过了一些显而易见的东西(树木遮住了森林)-请问有人可以使用一个明确的现实世界的例子来说明吗? ...