內(nèi)聚和耦合是什么意思 什么是高耦合低內(nèi)聚?
什么是高耦合低內(nèi)聚?高內(nèi)聚低耦合是軟件工程中的一個(gè)概念。它是判斷一個(gè)設(shè)計(jì)好壞的標(biāo)準(zhǔn)。它主要是面向?qū)ο蟮脑O(shè)計(jì)。它主要取決于類的內(nèi)聚性是否高,耦合性是否低。目的是提高模塊的可重用性和可移植性。一般來說,程
什么是高耦合低內(nèi)聚?
高內(nèi)聚低耦合是軟件工程中的一個(gè)概念。它是判斷一個(gè)設(shè)計(jì)好壞的標(biāo)準(zhǔn)。它主要是面向?qū)ο蟮脑O(shè)計(jì)。它主要取決于類的內(nèi)聚性是否高,耦合性是否低。目的是提高模塊的可重用性和可移植性。一般來說,程序結(jié)構(gòu)中每個(gè)模塊的內(nèi)聚度越高,模塊之間的耦合度就越低。銜接是從功能的角度來衡量模塊內(nèi)部的聯(lián)系。一個(gè)好的內(nèi)聚模塊應(yīng)該做一件事。它描述了模塊內(nèi)的功能關(guān)系;耦合是軟件結(jié)構(gòu)中模塊間互連的度量。耦合的強(qiáng)度取決于模塊間接口的復(fù)雜性、進(jìn)入或訪問模塊的點(diǎn)以及通過接口的數(shù)據(jù)。擴(kuò)展數(shù)據(jù)示例說明:例如,在訂單模塊中,訂單與庫存密切相關(guān)。如果沒有庫存,就不會(huì)有訂單,訂單在很大程度上依賴于庫存。如果直接在訂單模塊中寫入扣除庫存的邏輯,則訂單模塊和庫存模塊將耦合。另一方面,訂單模塊中扣除庫存的邏輯會(huì)導(dǎo)致訂單模塊的功能分散,功能不夠集中,從而形成低內(nèi)聚性。訂單中的庫存邏輯被劃分為一個(gè)獨(dú)立的庫存模塊。庫存模塊公開了扣除庫存的接口,訂單模塊調(diào)用該接口實(shí)現(xiàn)減少庫存的操作,減少了訂單邏輯與庫存邏輯的依賴,減少了訂單與庫存之間的耦合。同時(shí),訂單模塊只包含訂單處理邏輯,庫存系統(tǒng)只包含庫存處理邏輯。兩個(gè)系統(tǒng)的業(yè)務(wù)更加緊密
~]。這兩個(gè)標(biāo)準(zhǔn)分別是耦合性和內(nèi)聚性。(1) 耦合又稱塊間連接,是衡量軟件系統(tǒng)結(jié)構(gòu)中模塊間緊密關(guān)系的一種方法。模塊之間的連接越緊密,耦合就越強(qiáng),模塊的獨(dú)立性就越差。(2) 內(nèi)聚,也稱為塊內(nèi)連接,是指對(duì)模塊功能強(qiáng)度的度量,即模塊中每個(gè)元素的接近程度。如果模塊中的元素連接得越緊密,則內(nèi)聚力就越高。耦合和內(nèi)聚是模塊獨(dú)立性的兩個(gè)定性標(biāo)準(zhǔn)。在軟件系統(tǒng)劃分模塊時(shí),要實(shí)現(xiàn)高內(nèi)聚、低耦合,提高模塊的獨(dú)立性。