需求: 小明想要完成一个功能F,需要一把锤子T. 有两种办法可以实现: 1)小明很爱动手,精力很旺盛,于是,自己创建一个具有功能F的锤子T,并使用T来完成F: 2)小明很懒,天天睡大觉,于是,他叫小健买了一把具有功能F的锤子T,并且还交代小健必须亲自送到他的手上(够懒吧?),他才使用T来完成F. 是的,第一种方式就是动不动就new的:而第二种方式就是DI的一个解释. 而MVC中的DI,没有多大的复杂,仍然也是OCP原则的体现. MVC框架设计的万能步骤:1)实现:2)注册. 1. 实现IDepe