nav*_*een 4 design-patterns inversion-of-control
最近在一次采访中,我正在解释我所研究的框架.我说我们通过使用模板方法设计模式提供可扩展性来创建控制反转.我说这是一个控制反转的例子,我们的框架调用框架用户实现的方法,面试官说模板方法设计模式不是IOC的一个例子.我想知道我对IOC的理解是否不正确?
你的面试官错了.模板方法模式确实使用控制反转.事实上,维基百科条目特别提到它.
http://en.wikipedia.org/wiki/Template_method_pattern
模板方法用于框架中,每个框架都实现了域架构的不变部分,为自定义选项留下了"占位符".这是控制反转的一个例子,也称为好莱坞原则.
不幸的是,你要么不理解IoC或模板方法模式,要向他们解释为什么它是IoC的一个例子.不幸的是,许多人似乎认为IoC意味着依赖注入,就是这样.