單一職責原則

2022-09-19 09:30:10 字數 1103 閱讀 7247

為了提高**的可重用性,可讀性,可靠性,可擴充套件性,高內聚,低耦合,提出了23種設計模式。

而編寫設計模式則需遵守七大原則

1)單一職責原則

2)介面隔離原則

3)依賴倒置原則

4)開閉原則

5)黎克特制替換原則

6)迪公尺特法則

7)組合及復用原則

即乙個類負責一項職責。
//單一職責原則示例1

public class singleresponseblity

}class vehicle

}

//單一職責原則示例二

/** 示例分析

* 1.滿足了單一職責原則

* 2.改動太大

* 3.改進方案,直接修改vehicle類==》參考類3

* */

public class singleresponseblity2

}class watervehicla

}class roadvehicla

}class airvehicla

}

//單一職責原則示例3

/**示例3分析

* 1.修改方法未對原來的類做大的修改。只是增加方法

* 2.雖然沒有在類這個級別上遵守單一職責原則,但是在方法的級別上遵守了單一職責原則

** */

public class singleresponseblity3

}class vehicle2

public void runwater(string vehicle)

public void runair(string vehicle)

}

第三種示例雖未在類上遵守單一職責原則,但是在方法上遵守了單一職責原則,但是這種寫法僅限於方法比較少及簡單的類。

1)乙個類只負責一項職能,降低了類的複雜度

2)提高了類的可讀性及可維護性

3)降低變更引起的風險

4)通常情況下我們都要遵守單一職責原則,但是在邏輯簡單的類中,可在方法層遵守單一職責原則(複雜拆類,簡單拆方法)

單一職責原則

定義 不要存在多於乙個導致類變更的原因。通俗的說,即乙個類只負責一項職責。問題由來 類t負責兩個不同的職責 職責p1,職責p2。當由於職責p1需求發生改變而需要修改類t時,有可能會導致原本執行正常的職責p2功能發生故障。解決方案 遵循單一職責原則。分別建立兩個類t1 t2,使t1完成職責p1功能,t...

單一職責原則

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

單一職責原則

問題由來 一心二用,效率降低 類t負責兩個不同的職責 職責p1,職責p2。當由於職責p1需求發生改變而需要修改類t時,有可能會導致原本執行正常的職責p2功能發生故障。解決方案 專注做某件事情 遵循單一職責原則。分別建立兩個類t1 t2,使t1完成職責p1功能,t2完成職責p2功能。這樣,當修改類t1...