設計模式6大原則 總結

2022-03-25 08:48:20 字數 1741 閱讀 6625

1. 設計模式6大原則:

封裝相關的3個:1,2,3

2.黎克特制替換原則(關注類與類相關直接的類,學校類只關注班級類,不關注學生類):

1.任何使用基類的地方,都可以透明(安全,不會行為不一致)的使用其子類 ,

2.子類可以有自己獨有的屬性和行為;

3.父類實現的東西,子類不要在寫了(不要new 隱藏),防止出現行為呼叫不一致,如果想修改父類的行為,通過abstarct/virtual;

繼承:子類擁有父類的一切屬性和行為,任何父類出現的地方,都可以用子類來代替;

多型:通用abstract/virtaul 實現多型

3.迪公尺特法則:最少知道原則,:乙個物件應該對其他物件保持最少的了解;

:只與直接的朋友通訊;降低了類與類直接的耦合

類與類直接的關係:

縱向:繼承

橫向:聚合》組合包含》耦合

依賴別人更少,讓別人了解更少(private,protected,internal,protected internal(子類或者類庫),public);

4. 依賴倒置原則(面向抽象程式設計):高層模組不依賴底層模組,應通過抽象來依賴

依賴抽象,不要依賴細節

抽象:是指介面,抽象類,--可以沒有元素的實現

細節:普通類--一切都是確定的

抽象類==泛型類

面向抽象的好處:乙個方法滿足不同型別的引數,只有是實現了這個抽象,都可以用;支援擴充套件

物件導向的開發,就是類與類之間進行互動,如高層之間依賴底層的細節,細節是多變的,

面向抽象的開發:高層和底層沒有直接依賴,而是依賴抽象,抽象是穩定的;80%的設計模式是抽象完成的;

屬性,字段,方法引數 返回值...盡量都是抽象

依賴倒置原則:ioc控制反轉;

5.介面隔離原則:客戶端不應該依賴它不需要的介面

乙個類對另乙個類的依賴應該建立在最小的介面上;

介面到底如何定義:

1.介面不能大而全,不實現自己不需要的介面的東西;

2.也不能乙個方法乙個介面,這樣抽象沒有意義;

3.介面合併,介面繼承

6.開閉原則:對擴充套件開發,對修改關閉

修改:修改現有**,擴充套件:新增**類

宣告屬性,字段,變數,盡量宣告為父類

開閉原則是乙個目標,並沒有任何的手段,也被稱為總則,其他5個原則的建議,就是為了更好的做到ocp;

修改現有方法-->增加方法-->增加類-->增加/替換類庫(不用修改編譯發布**)

指導性原則,

//泛型

public void play(t phone) where t:abstractphone

//抽象類

public void play(abstractphone phone)

1.靜態類:靜態方法不佔記憶體,方法內申請的臨時變數隨時釋放;靜態欄位--唯一的佔據記憶體,不會釋放;

2.virtual 和 abstract 區別:

virtual: 虛方法子類需要改下,不需要不用改寫;

abstract:抽象方法子類必須實現填寫**;

3.欄位和屬性區別(許可權控制更細):public in height

public in salay;

4. 類與類直接的關係:

縱向:繼承

橫向:聚合》組合包含》耦合

5.繼承:子類擁有父類的一切屬性和行為,任何父類出現的地方,都可以用子類來代替;

6.多型:通用abstract/virtaul 實現多型 ,不用new 關鍵字隱藏

設計模式的6大原則

1 開閉原則 open close principle 1.1 定義 乙個軟體實體如類 模組和函式應該對擴充套件開放,對修改關閉。1.2 當軟體需要變化時,盡量通過擴充套件軟體實體的行為來實現變化,而不是通過修改已有的 來實現變化。1.3 開閉原則是總綱,他告訴我們要對擴充套件開放,對修改關閉。2 ...

設計模式之6大原則

軟體程式設計的總原則 高內聚,低耦合。提高 的復用率 耦合的方式 依賴,關聯,組合,聚合等 設計模式之6大原則 1.單一職責原則 乙個類只負責乙個功能領域中的相應職責。是實現高內聚低耦合的指導方針。2.裡式替換原則 所有引用基類的地方必須能透明地使用其子類的物件。子型別必須能夠替換掉它們的父型別 既...

設計模式6大原則簡述

0 前言 這一段時間一直在看設計模式,裡面分多次提到幾個設計原則,看了幾次發現記不清楚,還是得自己動手總結一下吧,把書上的理論先理解寫下來再說嘍。1 單一職責原則 雖說我們要遵守單一職責原則,但是也不是說死板的對每乙個細節都嚴格遵守,也要視情況而定 如果乙個類的邏輯非常簡單且可以保證變化極小,此時可...