**:moon1128
設計原則:
1.「開-閉」原則(open-closed principle, ocp)
2.黎克特制代換原則(liskov substitution principle, lsp)
3.依賴倒轉原則(dependency inversion principle, dip)
4.介面隔離原則(inte***ce segregation principle, isp)
5.合成/聚合復用原則(composition/aggregation principle, carp)
6.迪公尺特法則(law of demeter, lod)
系統的可擴充套件性是由 1,2,3,5 原則所保證的。
系統的靈活性是由 1 , 4 , 6 所保證的。
系統的可插入性是由 1 , 2 , 3 , 5 所保證的。
迪公尺特法則又叫作最少知識原則,就是說乙個物件應當對其他物件有盡可能少的了解。
狹義的迪公尺特法則的缺點:
在系統裡造出大量的小方法,這些方法僅僅是傳遞間接的呼叫,與系統的商務邏輯無關。
遵循類之間的迪公尺特法則會是乙個系統的區域性設計簡化,因為每乙個區域性都不會和遠距離的物件有直接的關聯。但是,這也會造成系統的不同模組之間的通訊效率降低,也會使系統的不同模組之間不容易協調。
門面模式和調停者模式實際上就是迪公尺特法則的應用。
廣義的迪公尺特法則在雷的設計上的體現:
優先考慮將乙個類設定成不變類。
盡量降低乙個類的訪問許可權。
謹慎使用 serializable 。
盡量降低成員的訪問許可權。
設計模式 1 總述
物件導向三大特性 物件導向六大原則 子類可以實現父類的抽象方法,但不能覆蓋父類的非抽象方法。子類中可以增加自己特有的方法。當子類的方法過載父類的方法時,方法的前置條件 即方法的形參 要比父類方法的輸入引數更寬鬆。當子類的方法實現父類的抽象方法時,方法的後置條件 即方法的返回值 要比父類更嚴格。23種...
4 設計模式總述
1.從今天開始 就詳細介紹各個設計模式了。設計模式總共可以分為三大類 1.建立型設計模式 簡單理解為 物件怎麼來 2.結構型設計模式 簡單理解為 物件和誰有關係 3.行為型設計模式 簡單理解為 物件與物件在幹嘛 說明 1.在正式開講設計模式之前 先說說設計模式是什麼 設計模式其實就是一種設計思想,是...
heritrix設計詳解 一 總述
讀了一段時間的原始碼,結合網上的文件和自己的理解來詳解下heritrix的體系結構,總體來說hertitrix是乙個設計優良的框架,擴充套件性極強,除了無法實現分布式之外,其他部件都可以被擴充套件。b 體系結構 b frontier 邊界部件 跟蹤哪個預定的uri將被收集,和已經被收集的uri,選擇...