設計原則(3):依賴倒置原則

何爲依賴倒置原則,主要分爲一下三點:
1、模塊間的依賴通過抽象發生,實現類之間不發生直接的依賴關係,其依賴關係是通過接口或抽象類產生 的;
2、接口或抽象類不依賴於實現類;
3、實現類依賴接口或抽象類;

實際開發中的用法:
1、每個類儘量都有接口或抽象類,或者抽象類和接口兩者都具備;
2、變量的表面類型儘量是接口或者是抽象類;
3、儘量不要覆寫基類的方法;
4、 結合里氏替換原則使用,我們可以得出 這樣一個通俗的規則: 接口負責定義public屬性和方法,並且聲明與其他對象的依賴關係,抽象類負責公共構 造部分的實現,實現類準確的實現業務邏輯,同時在適當的時候對父類進行細化。

例如:模擬司機開車的場景:
在這裏插入圖片描述
兩實現相互依賴,如果還要加上司機需要開BMW車是不是就會很難擴展,所以合理的設計如下:引入之後發現是不是很好擴展,這就是依賴倒置原則的魅力。
在這裏插入圖片描述