芒果视频下载

網站分類(lei)
登錄 |    

耦合性什么意思 耦合性和內聚性是什么意思

本文章由注冊用戶 芝士球球 上傳提供 2024-02-17 評論 0
摘要:耦合性是什么意思?很多小伙伴可能經常聽到耦合性這個詞但是并不知道這個詞的具體含義是什么,其實耦合性是一種軟件度量,是指一程序中,模塊及模塊之間信息或參數依賴的程度。那么耦合性和內聚性又是什么意思呢?耦合性的七種類型是什么?下面小編就來為大家解答這些問題,感興趣的朋友就一起來看看吧。

耦合性什么意思

耦合性(xing),也叫耦合度,是(shi)對模(mo)塊間關(guan)聯程度的(de)度量。耦合的(de)強弱取決于模(mo)塊間接口(kou)的(de)復雜性(xing)、調用模(mo)塊的(de)方式以(yi)及(ji)通過(guo)界(jie)面(mian)傳送數據(ju)的(de)多少(shao)。

模塊間的耦合度是指模塊之間的依賴關系,包括控制關系、調用關系、數據傳遞關系。模塊間聯系越多,其耦合性越強,同時表明其獨立性越差(降低耦合性,可以提高其獨立性)。軟件設計中通常用耦合度(du)和內(nei)聚(ju)度(du)作(zuo)為衡(heng)量模(mo)塊(kuai)獨立程度(du)的(de)標準。劃(hua)分模(mo)塊(kuai)的(de)一(yi)個準則就是高內(nei)聚(ju)低(di)耦合。

形象的(de)(de)說(shuo),就是要將代(dai)碼寫的(de)(de)和主機的(de)(de)排(pai)(pai)線(xian)一(yi)樣,低耦合(he)的(de)(de)模(mo)塊(kuai)好(hao)像你看你主機排(pai)(pai)線(xian)中的(de)(de)隨便(bian)一(yi)條就知道(dao)這條線(xian)是干啥一(yi)樣拔(ba)掉會(hui)不會(hui)影(ying)響其(qi)(qi)他排(pai)(pai)線(xian)的(de)(de)功(gong)能(neng)一(yi)樣,低耦合(he)的(de)(de)模(mo)塊(kuai)就好(hao)比鼠標(biao)線(xian)一(yi)樣拔(ba)掉它只影(ying)響它自身的(de)(de)鼠標(biao)功(gong)能(neng),高耦合(he)的(de)(de)模(mo)塊(kuai)就好(hao)比主機電源線(xian)一(yi)拔(ba)掉不只影(ying)響它自身的(de)(de)功(gong)能(neng)其(qi)(qi)他功(gong)能(neng)也被(bei)影(ying)響了。

耦合性和內聚性是什么意思

1、耦合性(塊間聯系)

指軟件系(xi)統結構中各模塊(kuai)間(jian)相互聯系(xi)緊(jin)密(mi)程度的(de)(de)一種(zhong)度量。模塊(kuai)之間(jian)聯系(xi)越緊(jin)密(mi),其耦合性(xing)就(jiu)越強(qiang),模塊(kuai)的(de)(de)獨立性(xing)則越差。模塊(kuai)間(jian)耦合高低取決于模塊(kuai)間(jian)接口(kou)的(de)(de)復雜性(xing)、調用的(de)(de)方(fang)式及傳遞的(de)(de)信息。

2、內聚性(塊內聯系)

指模(mo)塊(kuai)(kuai)的(de)(de)功能強度的(de)(de)度量(liang)(liang),即一個模(mo)塊(kuai)(kuai)內部(bu)各個元(yuan)(yuan)素彼此(ci)結(jie)合的(de)(de)緊(jin)(jin)密(mi)(mi)程度的(de)(de)度量(liang)(liang)。若一個模(mo)塊(kuai)(kuai)內各元(yuan)(yuan)素(語(yu)名之間、程序段之間)聯(lian)系的(de)(de)越(yue)緊(jin)(jin)密(mi)(mi),則它的(de)(de)內聚(ju)性就越(yue)高。

因此,現代程序講究(jiu)高(gao)內(nei)聚低耦合,即將功能內(nei)聚在同(tong)一(yi)模塊(kuai),模塊(kuai)與模塊(kuai)間盡可能獨(du)立(li),互相(xiang)依賴低。沒有(you)絕對沒有(you)耦合的(de)模塊(kuai)組,只有(you)盡量降低互相(xiang)之間的(de)影響,使模塊(kuai)越(yue)獨(du)立(li)越(yue)好。

耦合性的七種類型

1、非直接耦合

如果兩個模(mo)塊(kuai)之間(jian)沒(mei)有直接關(guan)系,它們之間(jian)的聯系完全(quan)是通過(guo)主(zhu)模(mo)塊(kuai)的控(kong)制(zhi)和調(diao)用(yong)來實(shi)現的,這就是非直接耦合(he)。這種耦合(he)的模(mo)塊(kuai)獨立性最強。

2、數據耦合

如果(guo)一個模(mo)塊訪問另一個模(mo)塊時,彼此之(zhi)間是通過數(shu)(shu)據(ju)(ju)(ju)參數(shu)(shu)(不(bu)是控(kong)制(zhi)參數(shu)(shu)、公共數(shu)(shu)據(ju)(ju)(ju)結構或外部變(bian)量)來(lai)交換輸入、輸出信息(xi)的,則稱(cheng)這種耦合為數(shu)(shu)據(ju)(ju)(ju)耦合。由(you)于(yu)限制(zhi)了(le)只通過參數(shu)(shu)表(biao)傳(chuan)遞數(shu)(shu)據(ju)(ju)(ju),按數(shu)(shu)據(ju)(ju)(ju)耦合開發的程序界面簡(jian)單、安(an)全(quan)可靠。因此,數(shu)(shu)據(ju)(ju)(ju)耦合是松散的耦合,模(mo)塊之(zhi)間的獨立性比較強。在軟(ruan)件程序結構中(zhong)至(zhi)少必須有(you)這類耦合。

3、標記耦合

如果一組模(mo)塊(kuai)通過參數(shu)(shu)表傳遞記(ji)錄(lu)信息(xi),就是標記(ji)耦合。事實上,這(zhe)組模(mo)塊(kuai)共享了這(zhe)個(ge)記(ji)錄(lu),它是某一數(shu)(shu)據(ju)結(jie)(jie)構(gou)(gou)的子結(jie)(jie)構(gou)(gou),而不是簡單(dan)變量。這(zhe)要求這(zhe)些(xie)模(mo)塊(kuai)都(dou)必須清楚該記(ji)錄(lu)的結(jie)(jie)構(gou)(gou),并按結(jie)(jie)構(gou)(gou)要求對此記(ji)錄(lu)進行操(cao)(cao)作(zuo)。在設(she)計中(zhong)應(ying)盡(jin)量避免這(zhe)種耦合,它使在數(shu)(shu)據(ju)結(jie)(jie)構(gou)(gou)上的操(cao)(cao)作(zuo)復(fu)雜化了。如果采取(qu)“信息(xi)隱蔽”的方法,把在數(shu)(shu)據(ju)結(jie)(jie)構(gou)(gou)上的操(cao)(cao)作(zuo)全部(bu)集中(zhong)在一個(ge)模(mo)塊(kuai)中(zhong),就可以消除這(zhe)種耦合。

4、控制耦合

如果一個模(mo)(mo)(mo)塊(kuai)通過傳送開關、標志、名字等控制信息,明顯地控制選擇另(ling)一模(mo)(mo)(mo)塊(kuai)的(de)(de)功能(neng)(neng),就是(shi)(shi)控制耦合。這(zhe)種耦合的(de)(de)實(shi)質(zhi)是(shi)(shi)在單一接口上選擇多(duo)功能(neng)(neng)模(mo)(mo)(mo)塊(kuai)中的(de)(de)某(mou)項功能(neng)(neng)。因此,對所控制模(mo)(mo)(mo)塊(kuai)的(de)(de)任何修改,都會影響(xiang)控制模(mo)(mo)(mo)塊(kuai)。另(ling)外,控制耦合也意味著控制模(mo)(mo)(mo)塊(kuai)必須知道所控制模(mo)(mo)(mo)塊(kuai)內部(bu)的(de)(de)一些(xie)邏輯關系,這(zhe)些(xie)都會降低(di)模(mo)(mo)(mo)塊(kuai)的(de)(de)獨立(li)性。

5、外部耦合

一(yi)組(zu)模塊都訪問同一(yi)全局簡單變(bian)量而不(bu)是同一(yi)全局數據(ju)結構(gou),而且不(bu)是通過參數表(biao)傳遞該(gai)全局變(bian)量的信息,則稱之為外(wai)部耦合。

6、公共耦合

若一組模塊都訪問同一個公共數據環境,則它們之間的耦合就稱為公共耦合。公共的互聯網數(shu)據環境可以是全局數(shu)據結(jie)構(gou)、共(gong)享(xiang)的(de)通信區(qu)、內存的(de)公(gong)共(gong)覆蓋區(qu)等。

7、內容耦合

如果發(fa)生(sheng)下列情形(xing),兩個模塊之(zhi)間就發(fa)生(sheng)了(le)內(nei)容耦合。

(1)一個模塊直接訪問(wen)另(ling)一個模塊的內部(bu)數據。

(2)一個模塊不通過正常(chang)入口轉到另一模塊內部(bu)。

(3)兩個模塊有一部分程序代碼重(zhong)疊(只可能出現(xian)在匯(hui)編語言(yan)中(zhong))。

(4)一個模(mo)塊(kuai)有多(duo)個入口。

網站提醒和聲明
本(ben)(ben)站為注冊用戶(hu)提(ti)供信息(xi)存(cun)儲空(kong)間服務,非“MAIGOO編輯上傳(chuan)(chuan)提(ti)供”的文章/文字均是注冊用戶(hu)自主發布(bu)上傳(chuan)(chuan),不代表本(ben)(ben)站觀點,版權(quan)(quan)歸原作者(zhe)所(suo)有(you),如有(you)侵權(quan)(quan)、虛假信息(xi)、錯誤信息(xi)或(huo)任(ren)何問題,請及時(shi)聯系我(wo)們,我(wo)們將(jiang)在第一時(shi)間刪除(chu)或(huo)更(geng)正。 申請刪除>> 糾錯>> 投訴侵權>> 網(wang)頁上相關信(xin)息(xi)的知識產權(quan)歸(gui)網(wang)站(zhan)方所(suo)有(包括但不限于文字、圖片、圖表、著作(zuo)權(quan)、商(shang)標權(quan)、為(wei)用戶提供的商(shang)業(ye)信(xin)息(xi)等),非經(jing)許可不得(de)抄(chao)襲或(huo)使用。
提交說(shuo)明: 快速提交發布>> 查看提交幫助>> 注冊登錄>>
發表評論
您還未登錄,依《網絡安全法》相關要求,請您登錄賬戶后再提交發布信息。點擊登錄>>如您還未注冊,可,感謝您的理解及支持!
最新評論(lun)
暫無評論