策略模式如何与依赖注入不同?策略模式vs依赖注入
即低于是你可以用策略模式怎么做:
class Foo{
private readonly ISortAlgo _sortAlgo;
public Foo(ISortAlgo sortAlgo)
{
_sortAlgo = sortAlgo;
}
public void Sort()
{
_sortAlgo.sort();
}
}
与DI,你可以做同样的,基本上你可以有构造函数,setter方法,接口等注射。它会产生与战略模式相同的效果。我知道,DI也是一套其他原则,如松耦合,可测试性,布线等。
在实现方面我没有看到太大的区别。
战略模式和DI有什么不同?
目前的答案并不是特别令人满意。更好的答案将注重实际上注重变量行为在运行时注入的差异。 – Mario 2014-08-19 15:09:12