Oop 我使用策略设计模式和模板方法设计模式的例子有意义吗?
对于一些家庭作业,我们必须设计一个示例(带有类),其中策略和模板方法设计模式结合在一起,相互补充,从而使它们更加可定制。或者“使用模板方法提供更多的可定制性来处理各种策略”,正如它所说 经过大量阅读和最初的困惑,我想到了将两种动物作为类的想法,Oop 我使用策略设计模式和模板方法设计模式的例子有意义吗?,oop,design-patterns,inheritance,strategy-pattern,template-method-pattern,Oop,Design Patterns,Inheritance,Strategy Pattern,Template Method Pattern,对于一些家庭作业,我们必须设计一个示例(带有类),其中策略和模板方法设计模式结合在一起,相互补充,从而使它们更加可定制。或者“使用模板方法提供更多的可定制性来处理各种策略”,正如它所说 经过大量阅读和最初的困惑,我想到了将两种动物作为类的想法,Dog和Snake,并让它们都使用接口来实现特定的功能,移动(这样狗可以行走,蛇可以滑行)。我认为这是策略模式的一部分,因为它们各自单独实现自己的移动功能 为了将模板方法模式合并到这个中,我想我应该这样做,这样它实现的类就可以进一步子类化,以实现可定制性,
Dog
和Snake
,并让它们都使用接口来实现特定的功能,移动(这样狗可以行走,蛇可以滑行)。我认为这是策略模式的一部分,因为它们各自单独实现自己的移动功能
为了将模板方法模式合并到这个中,我想我应该这样做,这样它实现的类就可以进一步子类化,以实现可定制性,这似乎与问题相符合。所以我想我应该使用Mover
作为类,并将其子类化为Walk
和Slither
。但这让我很困惑,因为每个动物都会实现超类Mover
,还是其中的一个子类?超类是抽象的,而子类是接口?或者它们都是接口
我的例子有意义吗?没有。主要原因是,当您需要使用不同的方法来做同一件事时,策略适用,例如布局管理器。在你的例子中,蛇有一种移动的方式,狗也是 坦率地说,我不认为这些模式配合得这么好,我不确定作业的目的是什么。当事情以特定的方式完成时,模板方法是很好的,而变体只是以不同的方式实现过程的步骤
也许你应该考虑一个过程,其中一个步骤可以插入一个策略。否。主要原因是,当你需要用不同的方法来做同一件事时,策略适用,例如布局管理器。在你的例子中,蛇有一种移动的方式,狗也是 坦率地说,我不认为这些模式配合得这么好,我不确定作业的目的是什么。当事情以特定的方式完成时,模板方法是很好的,而变体只是以不同的方式实现过程的步骤
也许你应该考虑一个过程,其中一个步骤可以插入一个策略。否。主要原因是,当你需要用不同的方法来做同一件事时,策略适用,例如布局管理器。在你的例子中,蛇有一种移动的方式,狗也是 坦率地说,我不认为这些模式配合得这么好,我不确定作业的目的是什么。当事情以特定的方式完成时,模板方法是很好的,而变体只是以不同的方式实现过程的步骤
也许你应该考虑一个过程,其中一个步骤可以插入一个策略。否。主要原因是,当你需要用不同的方法来做同一件事时,策略适用,例如布局管理器。在你的例子中,蛇有一种移动的方式,狗也是 坦率地说,我不认为这些模式配合得这么好,我不确定作业的目的是什么。当事情以特定的方式完成时,模板方法是很好的,而变体只是以不同的方式实现过程的步骤
也许您应该考虑一个过程,其中一个步骤可以插入一个策略。据我了解,您的示例不适合策略和模板,场景最适合抽象工厂,可能是原型(取决于完整需求)。 策略和模板之间的基本区别是继承v/s委托
如果您正在搜索策略和模板示例,我建议您使用一些游戏应用程序,其中完整的游戏可以放入模板功能中,如游戏结束、游戏开始、游戏赢家、游戏失败者以及游戏规则可以放入策略中,如何时移动、如何使用某些移动 据我了解,您的示例不适合策略和模板,场景最适合抽象工厂,可能是原型(取决于完整需求)。 策略和模板之间的基本区别是继承v/s委托
如果您正在搜索策略和模板示例,我建议您使用一些游戏应用程序,其中完整的游戏可以放入模板功能中,如游戏结束、游戏开始、游戏赢家、游戏失败者以及游戏规则可以放入策略中,如何时移动、如何使用某些移动 据我了解,您的示例不适合策略和模板,场景最适合抽象工厂,可能是原型(取决于完整需求)。 策略和模板之间的基本区别是继承v/s委托
如果您正在搜索策略和模板示例,我建议您使用一些游戏应用程序,其中完整的游戏可以放入模板功能中,如游戏结束、游戏开始、游戏赢家、游戏失败者以及游戏规则可以放入策略中,如何时移动、如何使用某些移动 据我了解,您的示例不适合策略和模板,场景最适合抽象工厂,可能是原型(取决于完整需求)。 策略和模板之间的基本区别是继承v/s委托 如果您正在搜索策略和模板示例,我建议您使用一些游戏应用程序,其中完整的游戏可以放入模板功能中,如游戏结束、游戏开始、游戏赢家、游戏失败者以及游戏规则可以放入策略中,如何时移动、如何使用某些移动 你