軟體設計七大原則實戰(三)-依賴倒置原則
1 定義
依賴倒置原則(Dependence Inversion Principle,DIP)
High level modules should not depend upon low level modules.Both should depend upon abstractions.Abstractions should not depend upon details.Details should depend upon abstractions.

高層模組和低層模組容易理解,每一個邏輯的實現都是由原子邏輯組成的,不可分割的原子邏輯就是低層模組,原子邏輯的再組裝就是高層模組
在Java語言中,抽象就是指介面或抽象類,兩者都是不能直接被例項化的
細節就是實現類,實現介面或繼承抽象類而產生的類就是細節,其特點就是可以直接被例項化,也就是可以加上一個關鍵字new產生一個物件。
依賴倒置原則在Java語言中的表現就是:
● 模組間的依賴通過抽象發生,實現類之間不發生直接的依賴關係,其依賴關係是通過介面或抽象類產生的;
● 介面或抽象類不依賴於實現類;
● 實現類依賴介面或抽象類。
更加精簡的定義就是“面向介面程式設計”——OOD(Object-Oriented Design,面向物件設計)的精髓之一。