多聚合,少繼承,低耦合,高內聚
阿新 • • 發佈:2017-09-06
方法 數量 自己 可重用性 行為 數據 代碼 面向對象 .com
面向對象的基本原則:多聚合,少繼承。低耦合,高內聚.
【高內聚、低耦合】
內聚:每個模塊盡可能獨立完成自己的功能,不依賴於模塊外部的代碼。
耦合:模塊與模塊之間接口的復雜程度,模塊之間聯系越復雜耦合度越高,牽一發而動全身。
目的:使得模塊的“可重用性”、“移植性”大大增強
通常程序結構中各模塊的內聚程度越高,模塊間的耦合程度就越低
模塊粒度:
『函數』 高內聚:盡可能類的每個成員方法只完成一件事(最大限度的聚合)低 耦合:減少類內部,一個成員方法調用另一個成員方法 『類』 高內聚低耦合:減少類內部,對其他類的調用 『功能塊』 高內聚低耦合:減少模塊之間的交互復雜度(接口數量,參數數據) 橫向:類與類之間、模塊與模塊之間 縱向:層次之間 盡可能,內容內聚,數據耦合 詳細參考:http://apps.hi.baidu.com/share/detail/12189176 http://www.iteye.com/topic/49082
【多聚合、少繼承】
聚合:事物A由若幹個事物B組成,體現在類與類之間的關系就是:“類B的實例”作為“類A”的“成員對象”出現。 繼承:顧名思義,體現在類與類之間的關系就是:“類B”被類A所繼承 顯然,當觀察類B所具有的行為能力時,“聚合”方式更加清晰。 典型應用:java適配器模式中,優選“對象適配器”,而不是“類適配器”
接口耦合度低於繼承。
http://apps.hi.baidu.com/share/detail/12189176
多聚合,少繼承,低耦合,高內聚