1、模塊的内聚性有:偶然内聚性、邏輯内聚性、時間内聚性、程序内聚性、聯系内聚性、依序内聚性、功能内聚性。
2、偶然内聚性:是指模塊中的機能隻是剛好放在一起,模塊中各機能之間唯一的關系是其位置在同一個模塊中。
3、邏輯内聚性:是隻要機能在邏輯上分為同一類,不論各機能的本質是否有很大差異,就将這些機能放在同一模塊中(例如将所有的鼠标和鍵盤都放在輸入處理副程序中)。模塊内執行幾個邏輯上相似的功能,通過參數确定該模塊完成哪一個功能。
4、時間内聚性:是指将相近時間點運行的程序,放在同一個模塊中(例如在捕捉到一個異常後調用一函數,在函數中關閉已打開的文件、産生錯誤日志、并告知用戶)。
5、程序内聚性:是指依一組會按照固定順序運行的程序放在同一個模塊中(例如一個函數檢查文件的權限,之後打開文件)。
6、聯系内聚性:是指模塊中的機能因為處理相同的數據或者指各處理使用相同的輸入數據或者産生相同的輸出數據,所以放在同一個模塊中(例如一個模塊中的許多機能都訪問同一個記錄)。
7、依序内聚性:是指模塊中的各機能彼此的輸入及輸出數據相關,一模塊的輸出數據是另一個模塊的輸入,類似工廠的生産線(例如一個模塊先讀取文件中的數據,之後再處理數據)。
8、功能内聚性:是指模塊中的各機能是因為它們都對模塊中單一明确定義的任務有貢獻(例如XML字符串的詞法分析)。
以下的情形會降低程序的内聚性:許多機能封裝在一類型内,可以借由方法供外界使用,但機能彼此類似之處不多。在方法中進行許多不同的機能,使用的是相關性低或不相關的數據。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!