依赖倒置原则的含义
高层模块不应该以来与底层模块,二者都应该依赖于抽象。
抽象不应该依赖于细节,细节应该依赖于抽象。
下图的结构
就违反了DIP原则,因为上层的client依赖于DB service,从而一来到DB
如果DB发生了变化,就需要修改DB service,从而修改client。
好的设计师中间这几层全部依赖于借口。
这样就算DB发生了变化也不会对DBservice有所影响。