設計模式 7個常用的設計原則

2022-04-13 12:58:45 字數 540 閱讀 6476

單一職責(用於橫向區分,介面,類,方法職責單一。介面1與介面2分別包含各自的職責)

介面隔離(用於豎向繼承,介面粒度不能過大。它的實現類(客戶端)不需要多餘方法)

開閉原則(目的。擴充套件開放,修改關閉)

黎克特制代換(基礎。基類出現的地方,必須可以使用子類替換)

依賴倒轉(手段。依賴抽象,依賴介面。實現需要針對抽象層進行程式設計,而將具體類的物件通過依賴注入的方式注入到其他物件中,常見的注入方式有3種。構造注入,設定注入,介面注入)

ioc(inversion of control)控制反轉模式;控制反轉是將元件間的依賴關係從程式內部提到外部來管理; 

di(dependency

injection)依賴注入模式;依賴注入是指將元件的依賴通過外部以引數或其他形式注入; 

兩個說法本質上是乙個意思。 

合成復用(優先使用組合,而不是繼承。有助於**復用,和防止繼承鏈過長。橋接模式)

迪公尺特(最少知識原則 。要求限制軟體實體之間通訊的寬度和深度,降低系統的耦合度。比如防止a呼叫b,b又呼叫a出現。使用中介軟體來控制,中介者模式)

設計模式 常用的設計原則

1 單一職責原則 就乙個類而言,應該僅有乙個引起它變化的原因。說明 單一職責是一種必需的思想,即職責相互分離。如果乙個類承擔的職責過多,就等於把這些職責耦合在一起,乙個職責的變化可能會削弱或者抑制這個類完成其他職責的能力。這種耦合會導致脆弱的設計,當發生變化時,設計會遭受到意想不到的破壞。軟體設計真...

7個常用的物件導向設計原則

乙個物件應該只包含單一的職責,並且該職責被完整地封裝在乙個類中。軟體實體應當對擴充套件開放,對修改關閉。所有引用基類的地方必須能透明地使用其子類的物件。客戶端不應該依賴那些它不需要的介面。高層模組不應該依賴低層模組,它們都應該依賴抽象。抽象不應該依賴於細節,細節應該依賴於抽象。優先使用物件組合,而不...

設計模式 軟體設計原則7 合成復用原則

合成復用原則 composite aggregate reuse principle,carp 是指盡量使用物件組合 has a 聚合 contanis a 而不是繼承關係達到軟體復用的目的。可以使系統更加靈活,降低類與類之間的耦合度,乙個類的變化對其他類造成的影響相對較少。繼承我們叫做白箱復用,相...