設計原則:單一職責原則(Single Responsibility Principle)

單一職責原則的定義

一個類只負責完成一個職責或者功能。也就是說,不要設計大而全的類,要設計粒度小、功能單一的類。
舉個例子:如果一個類中即包含訂單的操作、又包含用戶的操作,這就違反了單一職責原則。我們需要將這個類拆分爲兩個類:訂單類和用戶類。

如何判斷類的職責是否足夠單一?

下面有一些判斷原則:

  • 類中的代碼行數、函數或屬性過多。會影響代碼可讀性,這時我們需要考慮對類進行拆分;
  • 類依賴的其他類過多,需要考慮拆分;
  • 私有方法過多,考慮將私有方法獨立到新的類中,設置爲public,供更多類使用,提高代碼複用性;
  • 比較難給類起合適的名字;
  • 類中大量方法都集中操作其中某幾個屬性,可以考慮將這幾個屬性與對象的方法拆分出來。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章