【发布时间】:2011-08-04 06:10:01
【问题描述】:
在设计模式方面,我是个初学者。关于实施策略模式的任何想法/像这样:
公共类 SomeClass { 私有策略策略 = new DefaultStrategy(); 公共无效提供自定义策略(策略策略){ this.strategy = 策略; } }这将确保松散耦合以及策略模式和 DI 的所有其他好处。同时,您不强制用户提供策略,用户可以决定为极端情况提供自定义策略等。如果您为构造函数提供策略,则可以通过构造函数注入实现相同的目标-范围。我认为这种实现将在许多情况下提供最大的灵活性。
【问题讨论】:
-
谢谢!那篇文章澄清了一切!
标签: design-patterns dependency-injection strategy-pattern