耦合是什么?
1.模塊
模塊可大可小,可以是函數(shù),類,功能塊等等
?一個好的模塊應(yīng)當盡可能獨立完成某個功能。
耦合主要描述模塊之間的關(guān)系, 內(nèi)聚主要描述模塊內(nèi)部。
通常程序中各模塊的內(nèi)聚程度越高,模塊間的耦合程度就越低。我們寫程序追求高內(nèi)聚,低耦合。
2.內(nèi)聚(塊內(nèi)聯(lián)系)
模塊的功能強度的度量,即一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度的度量。
若一個模塊內(nèi)各元素(語名之間、程序段之間)聯(lián)系的越緊密,則它的內(nèi)聚性就越高。
模塊內(nèi)部的元素,關(guān)聯(lián)性越強,則內(nèi)聚越高,單一性越強。如果有各種場景、功能需要被引入到當前模塊, 為了維護代碼質(zhì)量, 建議拆分為多個模塊。
3.耦合(塊間聯(lián)系)
耦合是各模塊之間相互連接的一種度量。
模塊之間聯(lián)系越緊密,其耦合性就越強,模塊的獨立性則越差。
模塊間耦合高低取決于模塊間接口的復雜性、調(diào)用的方式及傳遞的信息。模塊之間存在依賴,改動可能會互相影響,關(guān)系越緊密,耦合越強,模塊獨立性越差。
比如模塊A直接操作了模塊B中數(shù)據(jù), 則視為強耦合, 若A只是通過數(shù)據(jù)與模塊B交互, 則視為弱耦合。
獨立的模塊便于擴展,維護,寫單元測試,如果模塊之間重重依賴,會極大降低開發(fā)效率。
4.原則
追求高內(nèi)聚,低耦合
(1)高內(nèi)聚:一個軟件模塊是由相關(guān)性很強的代碼組成,只負責一項任務(wù),也就是常說的單一責任原則
(2)低耦合:模塊之間的依賴關(guān)系弱
(3)解耦:解除耦合關(guān)系。
- 模塊間有依賴關(guān)系必然存在耦合,理論上的絕對零耦合是做不到的,只要降低耦合度即可。
- 讓數(shù)據(jù)模型,業(yè)務(wù)邏輯和視圖顯示三層之間彼此降低耦合,把關(guān)聯(lián)依賴降到最低,而不至于牽一發(fā)而動全身。
- A功能的代碼不要寫在B的功能代碼中,如果兩者需要交互,可以通過接口,通過函數(shù),甚至可以引入框架,但總之就是不要直接交叉寫。
總結(jié)
- 上一篇: 2022年最新年终奖个人所得税计算计算方
- 下一篇: 视觉应用工程师 篇二