內聚性是對一個模組內部各個組成元素之間相互結合的緊密程度的度量指標。模組中組成元素結合的越緊密,模組的內聚性就越高,模組的獨立性也就越高。理想的內聚性要求模組的功能應明確、單一,即一個模組只做一件事情。模組的內聚性和耦合性是兩個相互對立且又密切相關的概念。
內聚有如下的種類,它們之間的內聚度由弱到強排列如下:
(1) 偶然內聚。模組中的程式碼無法定義其不同功能的呼叫。但它使該模組能執行不同的功能,這種模組稱為巧合強度模組。
(2) 邏輯內聚。這種模組把幾種相關的功能組合在一起, 每次被呼叫時,由傳送給模組引數來確定該模組應完成哪一種功能
(3) 時間內聚:把需要同時執行的動作組合在一起形成的模組為時間內聚模組。
(4) 過程內聚:構件或者操作的組合方式是,允許在呼叫前面的構件或操作之後,馬上呼叫後面的構件或操作,即使兩者之間沒有資料進行傳遞。
(5) 通訊內聚:指模組內所有處理元素都在同一個資料結構上操作(有時稱之為資訊內聚),或者指各處理使用相同的輸入資料或者產生相同的輸出資料。
(6) 順序內聚:指一個模組中各個處理元素都密切相關於同一功能且必須順序執行,前一功能元素輸出就是下一功能元素的輸入。即一個模組完成多個功能,這些模組又必須順序執行。
(7) 功能內聚:這是最強的內聚,指模組內所有元素共同完成一個功能,聯絡緊密,缺一不可。
內聚性是對一個模組內部各個組成元素之間相互結合的緊密程度的度量指標。模組中組成元素結合的越緊密,模組的內聚性就越高,模組的獨立性也就越高。理想的內聚性要求模組的功能應明確、單一,即一個模組只做一件事情。模組的內聚性和耦合性是兩個相互對立且又密切相關的概念。
內聚有如下的種類,它們之間的內聚度由弱到強排列如下:
(1) 偶然內聚。模組中的程式碼無法定義其不同功能的呼叫。但它使該模組能執行不同的功能,這種模組稱為巧合強度模組。
(2) 邏輯內聚。這種模組把幾種相關的功能組合在一起, 每次被呼叫時,由傳送給模組引數來確定該模組應完成哪一種功能
(3) 時間內聚:把需要同時執行的動作組合在一起形成的模組為時間內聚模組。
(4) 過程內聚:構件或者操作的組合方式是,允許在呼叫前面的構件或操作之後,馬上呼叫後面的構件或操作,即使兩者之間沒有資料進行傳遞。
(5) 通訊內聚:指模組內所有處理元素都在同一個資料結構上操作(有時稱之為資訊內聚),或者指各處理使用相同的輸入資料或者產生相同的輸出資料。
(6) 順序內聚:指一個模組中各個處理元素都密切相關於同一功能且必須順序執行,前一功能元素輸出就是下一功能元素的輸入。即一個模組完成多個功能,這些模組又必須順序執行。
(7) 功能內聚:這是最強的內聚,指模組內所有元素共同完成一個功能,聯絡緊密,缺一不可。