敏捷开发原则-DIP(依赖倒置原则)

DIP(Dependency Inversion Principle)

  定义:高层模块不应该依赖于底层模块,二者都应该依赖于抽象。抽象不应该依赖于细节,细节应该依赖于抽象。

当高层的Pollcy 使用底层的Mechanlsm, 而Mechanlsm又使用更细节的Utility时。Pollcy对于其下任何一层的改动都是敏感的。这种设计其实非常糟糕。

高层中以接口的方式去使用底层的功能,而底层则实现了这些接口。这样高层就不直接依赖于底层,对于底层的改动不会太敏感。

 

  总结:这种依赖倒置原则正是面向对象设计的标志所在,它的正确使用对于设计可重用框架来说是必须的,同时由于抽象和细节彼此隔离,也使得代码更容易维护。

posted @ 2019-01-14 14:57  粗鲁师太  阅读(245)  评论(0编辑  收藏  举报