設計模式原則 單一職責原則(SRP)

2021-07-30 10:14:04 字數 542 閱讀 9615

定義:不要存在多於乙個導致類變更的原因。通俗的說,即乙個類只負責一項職責。 也就是說,乙個類應該只有乙個職責。如果有多個職責,就相當於把這些職責耦合在一起,乙個職責的變化會削弱或抑制這個類完成其他職責的能力,引發類的變化原因會有多個。所以在構造乙個類的時候,將類的不同職責分離到多個類或者介面中,確保引起類的變化原因只有乙個。

問題由來:類t負責兩個不同的職責:職責p1,職責p2。當由於職責p1需求發生改變而需要修改類t時,有可能會導致原本執行正常的職責p2功能發生故障。

解決方案:遵循單一職責原則。分別建立兩個類t1、t2,使t1完成職責p1功能,t2完成職責p2功能。這樣,當修改類t1時,不會使職責p2發生故障風險;同理,當修改t2時,也不會使職責p1發生故障風險。

1、設計模式原則—單一職責原則(srp)

2、設計模式原則—黎克特制替換原則(lsp)

3、設計模式原則—依賴倒置原則(dip)

4、設計模式原則—介面隔離原則(isp)

5、設計模式原則—迪公尺特原則

6、設計模式原則—開閉原則(ocp)

7、設計模式原則—組合重用原則

單一職責原則 SRP

一 srp簡介 srp single responsibility principle 就乙個類而言,應該只專注於做一件事和僅有乙個引起它變化的原因。所謂職責,我們可以理解他為功能,就是設計的這個類功能應該只有乙個,而不是兩個或更多。也可以理解為引用變化的原因,當你發現有兩個變化會要求我們修改這個類...

單一職責原則SRP

1 乙個類,只有乙個引起它變化的原因。應該只有乙個職責。每乙個職責都是變化的乙個軸線,如果乙個類有乙個以上的職責,這些職責就耦合在了一起。這會導致脆弱的設計。當乙個職責發生變化時,可能會影響其它的職責。另外,多個職責耦合在一起,會影響復用性。例如 要實現邏輯和介面的分離。2 什麼是職責?srp中,把...

單一職責原則 SRP

單一職責原則 single responsibility principle srp 基本概念 不要存在多於乙個導致類變更的原因。通俗的說,即乙個類只負責一項職責。優點 問題由來 類t負責兩個不同的職責 職責p1,職責p2。當由於職責p1需求發生改變而需要修改類t時,有可能會導致原本執行正常的職責p...