內聚性意思

內聚性(Cohesion)是軟體工程中一個重要的概念,特別是在設計和評估程式碼質量時。內聚性用來描述一個模組(如函數、類別或方法)內部元素之間的相關性。簡單來說,內聚性越高,表示一個模組內的元素越相關,它們共同完成一個特定的任務。

內聚性有不同的層次,從低到高可以分為以下幾種:

  1. 偶然內聚(Coincidental Cohesion):模組中的元素沒有內在的相關性,它們只是偶然地被放在一起。
  2. 低內聚(Low Cohesion):模組中的元素相關性很弱,它們只是部分地相關於一個任務。
  3. 功能內聚(Functional Cohesion):模組中的元素緊密相關於一個特定的功能或任務。
  4. 通信內聚(Communicational Cohesion):模組中的元素都處理同一個數據結構或通信對象。
  5. 時序內聚(Temporal Cohesion):模組中的元素按照特定的時間順序執行,以完成一個任務。
  6. 過程內聚(Sequential Cohesion):模組中的元素按照一個過程或步驟執行,以完成一個任務。
  7. 邏輯內聚(Logical Cohesion):模組中的元素通過一個邏輯關係(如條件判斷)相關聯。
  8. 通信內聚(Communicational Cohesion):模組中的元素都處理同一個數據結構或通信對象。
  9. 順序內聚(Sequential Cohesion):模組中的元素按照一個過程或步驟執行,以完成一個任務。

在軟體設計中,目標是提高模組的內聚性,因為這有助於提高程式碼的可讀性、可維護性和可擴展性。高內聚的模組通常更容易理解和修改,因為它們的責任和功能更加單一和集中。