高內(nèi)聚低耦合通俗理解 c語言程序如何做到高內(nèi)聚低耦合?
c語言程序如何做到高內(nèi)聚低耦合?要實(shí)現(xiàn)高內(nèi)聚和低耦合,重點(diǎn)不是代碼編寫,而是整個(gè)程序的設(shè)計(jì)階段。在編程中,首先要列出要實(shí)現(xiàn)的功能,然后進(jìn)行模塊設(shè)計(jì)。模塊設(shè)計(jì)完成后,代碼實(shí)現(xiàn)。為了實(shí)現(xiàn)高內(nèi)聚性和低耦合性
c語言程序如何做到高內(nèi)聚低耦合?
要實(shí)現(xiàn)高內(nèi)聚和低耦合,重點(diǎn)不是代碼編寫,而是整個(gè)程序的設(shè)計(jì)階段。在編程中,首先要列出要實(shí)現(xiàn)的功能,然后進(jìn)行模塊設(shè)計(jì)。模塊設(shè)計(jì)完成后,代碼實(shí)現(xiàn)。為了實(shí)現(xiàn)高內(nèi)聚性和低耦合性,有必要設(shè)計(jì)模塊:1。各模塊之間的功能必須明確。功能模塊之間實(shí)現(xiàn)的功能不能交叉。不允許模塊間相互調(diào)用;4如果需要模塊間調(diào)用,則只允許單向調(diào)用,即a可以調(diào)用B,B不能調(diào)用a,只要達(dá)到上述效果,就可以實(shí)現(xiàn)高內(nèi)聚、低耦合。在代碼實(shí)現(xiàn)的過程中,可能會(huì)增加一些額外的代碼復(fù)雜度,但需要降低維護(hù)難度。
什么是高耦合低內(nèi)聚?
高內(nèi)聚和低耦合是軟件工程中的概念,是衡量設(shè)計(jì)質(zhì)量的標(biāo)準(zhǔn)。主要是面向?qū)ο蟮脑O(shè)計(jì),主要看類的內(nèi)聚度是否高,耦合度是否低。目的是使模塊的可重用性和可移植性大大提高。一般來說,程序結(jié)構(gòu)中每個(gè)模塊的內(nèi)聚度越高,模塊之間的耦合度就越低。銜接是從功能的角度來衡量模塊內(nèi)部的關(guā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ù)舉例說明:例如訂單模塊,訂單與庫(kù)存關(guān)系密切,沒有庫(kù)存就沒有訂單,訂單對(duì)庫(kù)存依賴性強(qiáng)。在訂單模塊中直接編寫減量庫(kù)存邏輯,實(shí)現(xiàn)訂單模塊與庫(kù)存模塊的耦合。另一方面,訂單模塊中的庫(kù)存扣減邏輯會(huì)導(dǎo)致訂單模塊更加分散,功能不夠集中,從而構(gòu)成低內(nèi)聚性。訂單中的庫(kù)存邏輯被劃分為一個(gè)獨(dú)立的庫(kù)存模塊。庫(kù)存模塊公開了減少庫(kù)存的接口。訂單模塊調(diào)用接口減少庫(kù)存,將訂單邏輯與庫(kù)存邏輯的依賴性降到最低,減少訂單與庫(kù)存之間的耦合。同時(shí),訂單模塊只包含訂單處理邏輯,庫(kù)存系統(tǒng)只包含庫(kù)存處理邏輯,兩個(gè)系統(tǒng)的業(yè)務(wù)銜接性更強(qiáng)