本文由@呆代待殆原创,转载请注明出处。
Dependency Inversion Principle(依赖倒置原则,之后简称DIP):不要依赖实例(concrete classes)编程,依赖抽象(abstractions,指依赖抽象类和接口)。
关于倒置(inversion)的理解:通常我们的高层组件都会依赖于低层组件(指某个低层具体实例类),而DIP是不允许这样的,在DIP的指导下,我们会创建一个抽象类,让它处于高层组件与低层组件之间,打破这种依赖,这时不仅高层组件会依赖于这个抽象类,低层组件会依赖于这个所处位置比它高层的抽象类,所以会出现“倒置”这个说法。
此原则的几个指导方针(并不是一定要准守,只是在开发的时候当成一个参考而已)
1,不要有指向一个具体实例(concrete class)的应用(java中即不要有new的出现)。
2,不要有从具体实例(concrete class)派生出的类。
3,不要覆盖父类中已经实现的方法。
Dependency Inversion Principle(依赖倒置原则)
原文:http://www.cnblogs.com/coffeeSS/p/5413512.html