耦合
耦合指的是兩個模塊間相互依賴的程度。我們總是想要模塊間低耦合。
我們可以再次看到耦合是關(guān)注點(diǎn)分離原則的另一方面。
高內(nèi)聚低耦合的系統(tǒng)自帶關(guān)注點(diǎn)分離,反之亦然。
回到單塊系統(tǒng)場景
上一個改正拼寫的場景里,很明顯我們敗在了關(guān)注點(diǎn)分離上。至少從部署的角度上看,我們完全沒有任何的模塊化。系統(tǒng)看上去都是低內(nèi)聚高耦合的糟糕功能。
如果我們有一套分開的部署模塊,拼寫改正應(yīng)該只會影響一個模塊。很明顯這樣的部署變更更加安全。
當(dāng)然實(shí)踐中應(yīng)該怎樣來實(shí)現(xiàn)尚無定論。在這個特別的例子里,改正拼寫很可能屬于一個前端網(wǎng)絡(luò)組件。最起碼,這個前端組件應(yīng)該能夠從后端分離出來單獨(dú)部署,并且擁有它們自己的生命周期。
然而在真實(shí)的世界里,我們可能沒有足夠幸運(yùn)到總是能夠影響企業(yè)采用不同的技術(shù)。
例如,前端可能是由一個專門的內(nèi)容管理系統(tǒng)用自創(chuàng)的招式實(shí)現(xiàn)的。如果你遇到這種情況,明智的做法是時(shí)刻關(guān)注這樣的系統(tǒng)所帶來的成本。