首先讓我們來看壹下什麽是“耦合”,在電氣領域中“耦合”是指兩個電路或壹個電路中的兩個部分的交鏈,使能量可以傳遞。在軟件中是指兩個相對獨立的模塊通過某種接口可以彼此通訊。
第二我們來看看什麽是API,全稱是“應用程序接口”(Application Programming Interface),不僅僅是我們經常使用的Java中的Interface,它可以有很多中形式。
好,弄清上面兩個概念後我們來看看壹個緊密耦合的場景。當在A類中調用B類的方法B.getName()時,我們可以說A依賴B,因為如果B類沒有了,A類也無法正常使用。
這種緊密耦合使得A和B成為了壹個無法分隔的整體。如果A和B是同壹邏輯模塊我們可以稱這個模塊是“高內聚”的(其組成部分相互緊密依賴)。
然而當A和B是兩個不同模塊那麽我們很不喜歡看到這種緊密依賴關系,那麽怎麽辦呢?現在我們提出了API的概念。我們可以建立壹個Interface “IB”。然後使B類實現IB的getName方法。在A類中使用IB.getName()。可以看到A類和B類的依賴關系不存在了,而都對IB產生了依賴。如果在今後的某個時間我們將B類替換為B',A類也可以正常運行。這時我們就可以稱A類和B類之間是“松散耦合”。
上面的的例子裏IB是壹個Java的Interface,它也可以是壹個WebServices或者HTTP,甚至是壹套文件格式標準或數據表結構。
不知道我是否把問題說明白了?希望能對妳有幫助。