-
代碼的重用性:相同功能的代碼,不用多次編寫
-
可讀性:編程的規範性,便於其他程序員的閱讀和理解
-
可擴展性:當我們需要增加新的功能是,非常的方便
-
可靠性:當我們增加新的功能後,對員原來的功能沒有影響
-
使程序呈現高內聚,低耦合的特性
設計模式的七大原則:
-
單一職責原則
- 一個類只有一個作用,只負責一方面的事情,最次一個類中的一個方法,只能解決一個問題
- 降低類的複雜度
- 提高類的可讀性,可維護性
- 降低變更引起的風險
-
接口隔離原則
- 兩個類實現一個接口,但不是必要實現接口中的所有方法(即使實現了也不會使用),這時應該將接口進行拆分,比如可以將都要使用的共同的方法放在基類接口中,將實現類各自需要實現的方法分在兩個接口中,這就是接口隔離原則
-
依賴倒置原則:
- 高層模塊不應該依賴底層模塊,二者都應該依賴其抽象
- 抽象不依賴細節,細節依賴抽象
- 面向接口編程,通過接口或父類進行對象引用
- 相對於細節,抽象的東西更具有穩定性
- 通過抽象制定規範,不設計具體操作,將具體實現交給實現類
-
依賴關係傳遞的三種方式
- 接口傳遞
- 構造方法傳遞
- settter方式傳遞
-
里氏替換原則:
- 在使用繼承時,會給代碼帶來侵入性
- 所有引用基類的地方都必須能夠透明的使用其子類的對象
- 在使用繼承時,儘量不要重寫父類的方法,避免在調用子類方法時,本想調用父類方法,無意中調用了子類重寫的方法
-
迪米特原則(最少知道原則):
- 類與類關係越密切,耦合度越大
- 減少與間接朋友的關聯,儘量只與直接朋友通信
- 直接朋友包括成員變量,方法入參,方法返回值
- 陌生的類儘量不要以局部變量的形式出現
- 核心是降低類之間的耦合
-
開閉原則
- 對擴展開放,對修改關閉。在需求發生改變時,對提供方來說,需要進行修改,但是對使用方來說,儘量不做任何修改,也保證代碼可用
- 軟件需求變化時,儘量通過擴展實體的方式來實現,而不是通過修改已經存在的代碼 7、合成複用原則
- 儘量通過使用聚合、組合來代替繼承
核心思想
-
找出應用中可能需要變化之處,把它們獨立出來,不要和那些不需要變化的代碼混合在一起
-
針對接口編程,而不是針對實現編程
-
爲了交互對象之間的鬆耦合設計而努力
【設計模式】設計模式原則
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.