設計模式(一)七種設計原則

2021-10-06 06:06:47 字數 1102 閱讀 1605

單一設計原則:乙個類實現乙個功能,如果乙個類實現了多個功能,下次修改其中乙個功能的時候可能會導致其他功能引起錯誤。

注意事項和原則:

降低類的複雜度,提高類的可讀性可維護性

降低由變更帶來的風險

只有邏輯足夠簡單,才可以再**級別違反;只有類中方法數量足夠少,可以在方法級別保持單一職責原則

介面隔離原則:乙個類對另外乙個類的依賴(方法呼叫,方法形參)應該建立在最小的介面上(例:類a通過介面inte***ce1作為方法形參,但是這個方法只會呼叫這個介面中的部分方法);我們應該將這個介面繼續拆分

依賴倒轉(倒置)原則

高層模組不應該依賴底層模組,各個模組都應該依賴其抽象(抽象類,介面)

抽象不應該依賴細節(具體的實現類),細節應該依賴抽象

中心思想是面向介面程式設計,其目的是制定好規範,而不涉及具體的操作,把展現細節的任務交給他們的實現類去完成

裡式替換原則

所有引用基類的地方必須能透明的使用其子類的方法(在子類中盡量不要重寫父類的方法)

在適當情況下,可以通過聚合,組合,依賴來解決問題

通常的做法是:原來的父類和子類都繼承乙個更基礎的基類,原有的繼承關係替換為聚合,組合,依賴;

開閉原則

模組和函式應該對擴充套件開放(提供方),對修改關閉(使用方)

當軟體需要變化的時候,盡量通過擴充套件

用抽象構建框架,用實現擴充套件細節

程式設計中遵循其他原則,設計模式的目的就是遵循開閉原則

迪公尺特法則

乙個物件應該對其他物件保持最少的了解

類與類的關係越密切,耦合度越高

乙個類對自己依賴的類知道的越少越好(不管對於被依賴的類多複雜,都盡量將邏輯封裝在類的內部,除了對外提供的public)

我們稱出現的成員變數,方法引數,返回值為直接朋友;區域性變數中的類不是;也就是說陌生的類不要以區域性變數的形式出現在類的內部

核心是降低類之間的耦合,減少不必要的依賴

合成復用原則:盡量使用合成聚合的方式,而不是使用繼承

七種設計模式原則總結

目錄 一 物件導向解決核心問題 可維護性 可復用性 二 七種設計模式原則總結 這倆個問題是核心問題,如果這倆個問題能解決,才是真正的物件導向程式設計 設計模式原則 定義單一職責原則 single responsibility principle,srp 乙個類只負責乙個功領域中的相應職責 開閉原則 ...

設計模式學習(一) 七大原則

介紹 對於類來說,就是乙個類只負責乙個功能。應用例項 比如在操縱資料庫表的時候,就會建立乙個dao類來操縱單乙個資料庫的表的增刪改。userdao操作user表的增刪改。單一職責原則 注意事項和細節 介紹 客戶端不應該依賴它不需要的介面,即乙個類對另乙個類的依賴應該建立在最小的介面上 應用舉例 基本...

設計模式 設計模式原則

1 單一職責原則 srp 乙個類應當只有乙個引起其變化的原因。使用單一職責原則的好處有 1 類的複雜性降低 2 可讀性提高 3 可維護性提高 4 變更引起的風險降低 2 黎克特制替換原則 lsp 在使用父類的地方,可以使用其子類替換。黎克特制替換原則的含義 1 子類必須完全實現父類的方法 2 子類可...