首頁> Java> java教程> 主體

單一責任原則

WBOY
發布: 2024-08-25 20:32:03
原創
342 人瀏覽過

Single Responsibility Principle

每個軟體元件都應該只有一個且一個職責

軟體元件可以是類別、方法或模組

例如,瑞士軍刀是一種多用途工具,違反了軟體開發的單一責任原則,相反,刀是遵循單一責任的一個很好的例子(因為它只能用於切割,而瑞士軍刀可以用於切割、打開罐頭、作為萬能鑰匙、剪刀等)

由於無論是在現實世界還是在軟體開發中,變化都是不斷變化的,單一職責原則的定義也會隨之變化

每個軟體元件都應該有一個且僅有一個更改的理由


下面的 Employee 類別會改變的原因有以下三個

  1. 員工屬性變化
  2. 資料庫更改
  3. 稅計算方式的變化
雷雷

由於SRP(單一職責原則)建議在類別中只有一個更改原因,因此我們必須在Employee類別中進行一些修改


SRP 的變更

現在,Employee 類別中發生變化的原因只有一個

變更原因:員工屬性變更

雷雷

此外,EmployeeRepository 類別中發生變更的原因只有一個

變更原因:資料庫變更

雷雷

最後,TaxCalculator 類別中發生變化的原因只有一個

變更原因:稅金計算方式變更

雷雷

注意:所有 3 個類別現在都遵循單一職責原則,因此遵循這兩個定義

創建類別或任何軟體元件時請記住:以高內聚和鬆散耦合為目標

每個軟體元件應該只有一個和一個職責
每個軟體元件都應該有且只有一個更改的理由

以上是單一責任原則的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!