包之間的依賴結構必須是一個直接的無環圖形,也就是說,在依賴結構中不允許出現環(循環依賴)。如果包的依賴形成了環狀結構,怎麼樣打破這種循環依賴呢?有2種方法可以打破這種循環依賴關係:第一種方法是創建新的包,如果A、B、C形成環路依賴,那麼把這些共同類抽出來放在一個新的包D裏。這樣就把C依賴A變成了C依賴D以及A依賴D,從而打破了循環依賴關係。第二種方法是使用DIP(依賴倒置原則)和ISP(接口分隔原則)設計原則。
無環依賴原則(ADP)爲我們解決包之間的關係耦合問題。在設計模塊時,不能有循環依賴