Loading AI tools
来自维基百科,自由的百科全书
內聚性(英語:Cohesion)也稱為內聚力,是一軟體度量,是指機能相關的程式組合成一模組的程度[1],或是各機能凝聚的狀態或程度[2]。是結構化分析的重要概念之一。量測內聚性的方式很多,有些方法是由分析原始碼,得到非量化的結果,有些方法則是檢查原始碼的文字特徵,以得到內聚性的量化分數。內聚性是屬於順序式的量測量,一般會以「高內聚性」或「低內聚性」來表示。一般會希望程式的模組有高內聚性,因為高內聚性一般和許多理想的軟體特性有關,包括強健性、可靠度、可復用性及易懂性(understandability)等特性,而低內聚性一般也代表不易維護、不易測試、不易復用以及難以理解。
而耦合性(英語:Coupling)是一個和內聚性相對的概念。一般而言高內聚性代表低耦合性,反之亦然。內聚性是由賴瑞·康斯坦丁所提出,是以實務上可減少維護及修改的「好」軟體的特性為基礎[3]。
在電腦科學中,內聚性是指機能相關的程式組合成一模組的程度。應用在物件導向程式設計中,若服務特定型別的方法在許多方面都很類似,則此型別即有高內聚性。在一個高內聚性的系統中,代碼可讀性及復用的可能性都會提高,程式雖然複雜,但可被管理。
以下的情形會降低程式的內聚性:
低內聚性的缺點如下:
內聚性是一種非量化的量測,可利用評量規準來確認待確認原始碼的內聚性的分類。內聚性的分類如下,由低到高排列:
由賴瑞·康斯坦丁、愛德華·尤登及史蒂夫·麥康奈爾等人的研究[4]都提出偶然內聚性和邏輯內聚性是不好的,聯絡內聚性和依序內聚性是好的,而功能內聚性是最理想的狀態。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.