高內(nèi)聚低耦合通俗理解 c語(yǔ)言程序如何做到高內(nèi)聚低耦合?
c語(yǔ)言程序如何做到高內(nèi)聚低耦合?要實(shí)現(xiàn)高內(nèi)聚、低耦合,關(guān)鍵不在于代碼編寫,而在于整個(gè)程序設(shè)計(jì)階段。在編程時(shí),首先要列出要實(shí)現(xiàn)的功能,然后再進(jìn)行模塊設(shè)計(jì)。模塊設(shè)計(jì)完成后,代碼實(shí)現(xiàn)。為了實(shí)現(xiàn)高內(nèi)聚、低耦合
c語(yǔ)言程序如何做到高內(nèi)聚低耦合?
要實(shí)現(xiàn)高內(nèi)聚、低耦合,關(guān)鍵不在于代碼編寫,而在于整個(gè)程序設(shè)計(jì)階段。在編程時(shí),首先要列出要實(shí)現(xiàn)的功能,然后再進(jìn)行模塊設(shè)計(jì)。模塊設(shè)計(jì)完成后,代碼實(shí)現(xiàn)。為了實(shí)現(xiàn)高內(nèi)聚、低耦合,我們需要設(shè)計(jì)如下模塊:1。各模塊的功能必須明確。各模塊的功能不能交叉。模塊之間不允許相互調(diào)用。如果模塊之間必須發(fā)生調(diào)用,則只允許單向調(diào)用,即a可以調(diào)用B,B不能調(diào)用a,只要達(dá)到上述效果,就可以實(shí)現(xiàn)高內(nèi)聚、低耦合。在代碼實(shí)現(xiàn)的過(guò)程中,可能會(huì)增加一些額外的代碼復(fù)雜度,但是為了降低維護(hù)的難度,有必要這樣做。
高內(nèi)聚低耦合是什么意思?
高內(nèi)聚性是讓類或方法專注于一件事。低耦合:這需要較少的對(duì)象和類之間的耦合。更流行的是,例如,如果一個(gè)類的一個(gè)方法引用了許多其他類,而您是新的,那么它就會(huì)出現(xiàn)。修改類后,此方法將出現(xiàn)異常錯(cuò)誤。
什么是高耦合低內(nèi)聚?
高內(nèi)聚和低耦合是軟件工程中的一個(gè)概念。它是判斷一個(gè)設(shè)計(jì)好壞的標(biāo)準(zhǔn)。它主要是面向?qū)ο蟮脑O(shè)計(jì)。它主要取決于類的內(nèi)聚性是否高,耦合性是否低。目的是提高模塊的可重用性和可移植性。一般來(lái)說(shuō),程序結(jié)構(gòu)中每個(gè)模塊的內(nèi)聚度越高,模塊之間的耦合度就越低。銜接是從功能的角度來(lái)衡量模塊內(nèi)部的聯(lián)系。一個(gè)好的內(nèi)聚模塊應(yīng)該做一件事。它描述了模塊內(nèi)的功能關(guān)系;耦合是軟件結(jié)構(gòu)中模塊間互連的度量。耦合的強(qiáng)度取決于模塊間接口的復(fù)雜性、進(jìn)入或訪問(wèn)模塊的點(diǎn)以及通過(guò)接口的數(shù)據(jù)。擴(kuò)展數(shù)據(jù)示例說(shuō)明:例如,在訂單模塊中,訂單與庫(kù)存密切相關(guān)。如果沒(méi)有庫(kù)存,就不會(huì)有訂單,訂單在很大程度上依賴于庫(kù)存。如果直接在訂單模塊中寫入扣除庫(kù)存的邏輯,則訂單模塊和庫(kù)存模塊將耦合。另一方面,訂單模塊中扣除庫(kù)存的邏輯會(huì)導(dǎo)致訂單模塊的功能分散,功能不夠集中,從而形成低內(nèi)聚性。訂單中的庫(kù)存邏輯被劃分為一個(gè)獨(dú)立的庫(kù)存模塊。庫(kù)存模塊公開了扣除庫(kù)存的接口,訂單模塊調(diào)用該接口實(shí)現(xiàn)減少庫(kù)存的操作,減少了訂單邏輯與庫(kù)存邏輯的依賴,減少了訂單與庫(kù)存之間的耦合。同時(shí),訂單模塊只包含訂單處理邏輯,庫(kù)存系統(tǒng)只包含庫(kù)存處理邏輯,使得兩個(gè)系統(tǒng)的業(yè)務(wù)更加銜接