3D編程模式:介紹設計原則
大家好~本文介紹6個設計原則的定義
系列文章詳見:
3D編程模式:開篇
單一職責原則(SRP)
定義:
- 只有一個原因引起變化
- 一次只做一件事情
依賴倒置原則(DIP)
定義:
- 高層模塊不應該依賴低層模塊,兩者都應該依賴其抽象
- 抽象不應該依賴細節
- 細節應該依賴抽象
具體來說就是:
模塊間的依賴通過抽象發生,實現類之間不發生直接的依賴關系,其依賴關系是通過接口或抽象類產生的;
接口或抽象類不依賴于實現類;
實現類依賴接口或抽象類。
接口隔離原則(ISP)
定義:
- 客戶端不應該依賴它不需要的接口
- 類間的依賴關系應該建立在最小的接口上
也就是說,接口應該盡量細化,同時接口中的方法盡量少
迪米特法則(LoD)
也稱為最少知識原則(LKP)
定義:
- 一個對象應該對其他對象有最少的了解
具體來說就是:
一個類應該對自己需要耦合或調用的類知道得最少,你(被耦合或調用的類)的內部是如何復雜都和我沒關系,那是你的事情,我就知道你提供的這么多public方法
它包括兩個方面:
- 只與直接的朋友通信
- 朋友間也是有距離的
合成復用原則(CARP)
定義:
- 要盡量使用組合而不是繼承
開閉原則(OCP)
定義:
- 對擴展開放,對修改關閉
其含義是說一個軟件實體應該通過擴展來實現變化,而不是通過修改已有的代碼來實現變化。
更多資料
應用原則的具體案例請見設計原則視頻
大家好~本文介紹6個設計原則的定義
浙公網安備 33010602011771號