高內(nèi)聚低耦合.doc

高內(nèi)聚低耦合.doc

ID:58399345

大?。?2.00 KB

頁數(shù):13頁

時間:2020-05-08

高內(nèi)聚低耦合.doc_第1頁
高內(nèi)聚低耦合.doc_第2頁
高內(nèi)聚低耦合.doc_第3頁
高內(nèi)聚低耦合.doc_第4頁
高內(nèi)聚低耦合.doc_第5頁
資源描述:

《高內(nèi)聚低耦合.doc》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、高內(nèi)聚低耦合1.什么是內(nèi)聚?什么是耦合?內(nèi)聚是從功能角度來度量模塊內(nèi)的聯(lián)系,一個好的內(nèi)聚模塊應(yīng)當(dāng)恰好做一件事。它描述的是模塊內(nèi)的功能聯(lián)系;耦合是軟件結(jié)構(gòu)中各模塊之間相互連接的一種度量,耦合強(qiáng)弱取決于模塊間接口的復(fù)雜程度、進(jìn)入或訪問一個模塊的點以及通過接口的數(shù)據(jù)。耦合性也稱塊間聯(lián)系。指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。模塊之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性則越差。模塊間耦合高低取決于模塊間接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。2.內(nèi)聚分為哪幾類?耦合分為哪幾類?內(nèi)聚有如下的種類,它們之間的內(nèi)聚度由弱到強(qiáng)排列如下:(1)偶然內(nèi)聚。模塊中的代碼無法定義其不

2、同功能的調(diào)用。但它使該模塊能執(zhí)行不同的功能,這種模塊稱為巧合強(qiáng)度模塊。(2)邏輯內(nèi)聚。這種模塊把幾種相關(guān)的功能組合在一起,每次被調(diào)用時,由傳送給模塊參數(shù)來確定該模塊應(yīng)完成哪一種功能(3)時間內(nèi)聚:把需要同時執(zhí)行的動作組合在一起形成的模塊為時間內(nèi)聚模塊。高內(nèi)聚低耦合1.什么是內(nèi)聚?什么是耦合?內(nèi)聚是從功能角度來度量模塊內(nèi)的聯(lián)系,一個好的內(nèi)聚模塊應(yīng)當(dāng)恰好做一件事。它描述的是模塊內(nèi)的功能聯(lián)系;耦合是軟件結(jié)構(gòu)中各模塊之間相互連接的一種度量,耦合強(qiáng)弱取決于模塊間接口的復(fù)雜程度、進(jìn)入或訪問一個模塊的點以及通過接口的數(shù)據(jù)。耦合性也稱塊間聯(lián)系。指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度

3、量。模塊之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性則越差。模塊間耦合高低取決于模塊間接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。2.內(nèi)聚分為哪幾類?耦合分為哪幾類?內(nèi)聚有如下的種類,它們之間的內(nèi)聚度由弱到強(qiáng)排列如下:(1)偶然內(nèi)聚。模塊中的代碼無法定義其不同功能的調(diào)用。但它使該模塊能執(zhí)行不同的功能,這種模塊稱為巧合強(qiáng)度模塊。(2)邏輯內(nèi)聚。這種模塊把幾種相關(guān)的功能組合在一起,每次被調(diào)用時,由傳送給模塊參數(shù)來確定該模塊應(yīng)完成哪一種功能(3)時間內(nèi)聚:把需要同時執(zhí)行的動作組合在一起形成的模塊為時間內(nèi)聚模塊。(4)過程內(nèi)聚:構(gòu)件或者操作的組合方式是,允許在調(diào)用前面的構(gòu)件或操作之后,馬上

4、調(diào)用后面的構(gòu)件或操作,即使兩者之間沒有數(shù)據(jù)進(jìn)行傳遞。(5)通信內(nèi)聚:指模塊內(nèi)所有處理元素都在同一個數(shù)據(jù)結(jié)構(gòu)上操作(有時稱之為信息內(nèi)聚),或者指各處理使用相同的輸入數(shù)據(jù)或者產(chǎn)生相同的輸出數(shù)據(jù)。(6)順序內(nèi)聚:指一個模塊中各個處理元素都密切相關(guān)于同一功能且必須順序執(zhí)行,前一功能元素輸出就是下一功能元素的輸入。(7)功能內(nèi)聚:這是最強(qiáng)的內(nèi)聚,指模塊內(nèi)所有元素共同完成一個功能,缺一不可。耦合可以分為以下幾種,它們之間的耦合度由高到低排列如下:(1)內(nèi)容耦合:如果發(fā)生下列情形,兩個模塊之間就發(fā)生了內(nèi)容耦合·一個模塊直接訪問另一個模塊的內(nèi)部數(shù)據(jù)·一個模塊不通過正常入口轉(zhuǎn)到另一模塊內(nèi)部;·

5、兩個模塊有一部分程序代碼重疊(只可能出現(xiàn)在匯編語言中);·一個模塊有多個入口。(2)公共耦合:若一組模塊都訪問同一個公共數(shù)據(jù)環(huán)境,則它們之間的耦合就稱為公共耦合。公共的數(shù)據(jù)環(huán)境可以是全局?jǐn)?shù)據(jù)結(jié)構(gòu)、共享的通信區(qū)、內(nèi)存的公共覆蓋區(qū)等。(3)外部耦合:一組模塊都訪問同一全局簡單變量而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),而且不是通過參數(shù)表傳遞該全局變量的信息,則稱之為外部耦合。(4)控制耦合:如果一個模塊通過傳送開關(guān)、標(biāo)志、名字等控制信息,明顯地控制選擇另一模塊的功能,就是控制耦合(5)標(biāo)記耦合:一組模塊通過參數(shù)表傳遞記錄信息,就是標(biāo)記耦合。這個記錄是某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),而不是簡單變量。其實傳遞

6、的是這個數(shù)據(jù)結(jié)構(gòu)的地址;也就是地址傳遞。?(6)數(shù)據(jù)耦合:指兩個模塊之間有調(diào)用關(guān)系,傳遞的是簡單的數(shù)據(jù)值,一個模塊訪問另一個模塊時,彼此之間是通過簡單數(shù)據(jù)參數(shù)(不是控制參數(shù)、公共數(shù)據(jù)結(jié)構(gòu)或外部變量)來交換輸入、輸出信息的,相當(dāng)于高級語言的值傳遞。(7)非直接耦合:兩個模塊之間沒有直接關(guān)系,它們之間的聯(lián)系完全是通過主模塊的控制和調(diào)用來實現(xiàn)的。耦合強(qiáng)度,依賴于以下幾個因素:(1)一個模塊對另一個模塊的調(diào)用;(2)一個模塊向另一個模塊傳遞的數(shù)據(jù)量;(3)一個模塊施加到另一個模塊的控制的多少;(4)模塊之間接口的復(fù)雜程度。1、耦合、內(nèi)聚的評估標(biāo)準(zhǔn)是強(qiáng)度,耦合越弱越好,內(nèi)聚越強(qiáng)越好;2

7、、所謂過度指的是由于錯誤理解導(dǎo)致的效果相反的設(shè)計;3、耦合指的模塊之間的關(guān)系,最弱的耦合設(shè)計是通過一個主控模塊來協(xié)調(diào)n個模塊之間的運(yùn)作。還是舉一個我舉過的例子:客戶要求在界面上增加一個字段,你的項目要修改幾個地方呢?如果你只要修改項目文檔,那么你的開發(fā)構(gòu)架就是最低強(qiáng)度的耦合,而這種設(shè)計成熟的開發(fā)團(tuán)隊都已經(jīng)做到了,他們使用開發(fā)工具通過項目模型驅(qū)動數(shù)據(jù)庫和各層次的代碼,而不是直接修改那些代碼;4、內(nèi)聚指的是模塊內(nèi)部的功能,最強(qiáng)的內(nèi)聚就是功能單一到不能拆分,也就是原子化,5、所以強(qiáng)內(nèi)聚和弱耦合是相輔相成的,一

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。