Java程序設計關於低耦合與高內聚理念

熟悉Java的人都知道Java程序設計時,爲了避免程序的冗雜,減少各個類之間的依耐性,經常使用低耦合和高內聚的設計理念。

      所謂耦合 是指在一個軟件結構內不同模塊之間互連程度的度量,

       而低耦合 就是指在設計一個軟件時,作爲一個完整的軟件系統,對於各種模塊與模塊之間應儘可能的是其獨立的存在,讓每個模塊儘可能的獨立完成其特定的功能。

       如果某兩個模塊間的關係比較複雜的話,最好首先考慮進一步的模塊劃分。這樣有利於修改和組合。

     所謂內聚 是指一個模塊內各個元素彼此結合的緊密程度。而高內聚 就是指在一個模塊的內部,應該儘可能的讓每個元素都緊密的相連。

        也就是充分利用每一個元素的功能,各施所能,以最終實現某個功能。
      如果某個元素與該模塊的關係比較疏鬆的話,可能該模塊的結構還不夠完善,或者是該元素是多餘的。

 

     例如以下有四個類,分別有兩種設計方法 ,如圖:

    圖一:             在 該圖中    各個類之間呈網狀引用結構,如果寫代碼時也是這種結構,那麼不僅會使代碼很難理解,而且不容易使讀者理解,更重要的時,無法繼續在上面擴展代碼,即你更改 某一個類的元素時,同時也會影響到其他的類,因爲他們之間的依耐性很高,所謂的“牽一髮而動全身”就是指的這個意思。

 

 

 

    圖二:

 

 

 

 

 

    

 

  在該圖中,我們可以看到類C,B,A都只是爲D所用,所以他們相互之間是獨立的,在我們修改代碼時:比如我們修改類C中的代碼,那就不會影響到類B和類A,這樣,只要採用這種星狀結構,不論我們的軟件有多麼的龐大,我們在修繕代碼時也不會有太多的麻煩。

   內聚耦合 ,包含了橫向和縱向的關係。功能內聚和數據耦合,是我們需要達成的目標。橫向的內聚和耦合,通常體現在系統的各個模塊、類之間的關係,而縱向的耦合,體現在系統的各個層次之間的關係。

        高內聚和低耦合 是軟件工程設計的一種原則,是寫代碼時要遵循的一種規範。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章