1. 單一職責原則(Single Responsibility Principle) 每一個類應該專註於做一件事情。降低類的複雜度,一個類只負責一項職責.提高類的可讀性,提高系統的可維護性, 2. 里氏替換原則(Liskov Substitution Principle)超類存在的地方,子類是可以替 ...
1. 單一職責原則(Single Responsibility Principle)
每一個類應該專註於做一件事情。
降低類的複雜度,一個類只負責一項職責.提高類的可讀性,提高系統的可維護性, 2. 里氏替換原則(Liskov Substitution Principle)
超類存在的地方,子類是可以替換的。
子類可以替換父類並且出現在父類能夠出現的任何地方 3. 依賴倒置原則(Dependence Inversion Principle)
實現儘量依賴抽象,不依賴具體實現。
傳統的結構化編程中,最上層的模塊通常都要依賴下麵的子模塊來實現,也稱為高層依賴低層 4. 介面隔離原則(Interface Segregation Principle)
應當為客戶端提供儘可能小的單獨的介面,而不是提供大的總的介面。 5. 迪米特法則(Law Of Demeter)
又叫最少知識原則,一個軟體實體應當儘可能少的與其他實體發生相互作用。
類與類之間的關係越密切,耦合度也就越來越大,只有儘量降低類與類之間的耦合才符合設計模式
一個對象對另一個對象知道的越少越好,即一個軟體實體應當儘可能少的與其他實體發生相互作用,在一個類里能少用多少其他類就少用多少,尤其是局部變數的依賴類,能省略儘量省略 6. 開閉原則(Open Close Principle) 面向擴展開放,面向修改關閉。
既開放又封閉,對擴展是開放的,對更改是封閉的!
擴展即擴展現行的模塊,當我們軟體的實際應用發生改變時,出現新的需求,就需要我們對模塊進行擴展,使其能夠滿足新的需求!
更改封閉即是在我們對模塊進行擴展時,勿需對源有程式代碼和DLL進行修改或重新編譯文件 7. 組合/聚合復用原則(Composite/Aggregate Reuse Principle CARP)
儘量使用合成/聚合達到復用,儘量少用繼承。原則: 一個類中有另一個類的對象。