高內聚,低耦合的實現方式

賺錢養個快樂小智障發表於2020-12-27

在這裡插入圖片描述

高內聚低耦合,是軟體工程中的概念,是判斷軟體設計好壞的標準,主要用於程式的物件導向的設計,主要看類的內聚性是否高,耦合度是否低。

目的是使程式模組的可重用性、移植性大大增強。通常程式結構中各模組的內聚程度越高,模組間的耦合程度就越低。

內聚是從功能角度來度量模組內的聯絡,一個好的內聚模組應當恰好做一件事,它描述的是模組內的功能聯絡;耦合是軟體結構中各模組之間相互連線的一種度量,耦合強弱取決於模組間介面的複雜程度、進入或訪問一個模組的點以及通過介面的資料。

降低耦合度的方法

1、少使用類的繼承,多用介面隱藏實現的細節。 Java物件導向程式設計引入介面除了支援多型外, 隱藏實現細節也是其中一個目的。

2、模組的功能化分儘可能的單一,道理也很簡單,功能單一的模組供其它模組呼叫的機會就少。(其實這是高內聚的一種說法,高內聚低耦合一般同時出現)。

3、遵循一個定義只在一個地方出現。

4、少使用全域性變數。

5、類屬性和方法的宣告少用public,多用private關鍵字。

6、多用設計模式,比如採用MVC的設計模式就可以降低介面與業務邏輯的耦合度。

7、儘量不用“硬編碼”的方式寫程式,同時也儘量避免直接用SQL語句運算元據庫。

8、最後當然就是避免直接操作或呼叫其它模組或類(內容耦合);如果模組間必須存在耦合,原則上儘量使用資料耦合,少用控制耦合,限制公共耦合的範圍,避免使用內容耦合。

增強內聚度方法

1、模組只對外暴露最小限度的介面,形成最低的依賴關係。

2、只要對外介面不變,模組內部的修改,就不得影響其他模組。

3、刪除一個模組,應當隻影響有依賴關係的其他模組,而不應該影響其他無關部分。

相關文章