close
1.DIP 原則定義
- 1.高層次模組不應該依賴於低層次模組。
- 2.抽象模組(interface,abstract class...)不應該依賴於細節(實作部分)。
- 3.細節(實作部分)應該要依賴於高層次模組。
2.一個違反 DIP 範例
假設Human class有吃東西的方法,Apple class有取得自己名稱的方法。
接著我們實作人吃頻果。
我們可以看到上述萬一有一天人突然想吃起香蕉,但是問題是沒有辦法。
所以硬要吃香蕉話只能大幅度修改程式碼了,就算改好了下次想吃榴槤又要改...
3.修正符合DIP
重點:
1.People是高層次模組所以由較低層次之模組Human去實作,水果與頻果與香蕉模組有相同之含意,
由低層次依賴高層次且高層次並不依賴於低層次模組,正是符合DIP之精神。
全站熱搜