類應該對擴充套件開放,對修改關閉。使用介面及抽象類實現目的:減少影響原有的方法
高層模組不應該依賴低層模組,兩者都應該依賴其抽象。依賴抽象類,不要依賴具體類
針對介面程式設計,不要針對實現程式設計
目的:解耦合
就乙個類而言,應該僅有乙個引起它變化的原因當乙個類耦合了多個職責,當其中乙個職責發生變化的時候,就會影響其他的職責
比如,頁面和實現邏輯的分離
用多個專門的介面,而不使用單一的總介面,客戶端不應該依賴它不需要的介面乙個類對乙個類的依賴應該建立在最小的介面上(ps: 類是乙個泛指,如介面,抽象類等都是類)
目的:解耦
乙個物件應該對其他物件保持最少的了解,也叫最少知道原則盡量降低類與類之間的耦合
多用組合,少用繼承
目的:類與類之間的松耦合
子類可以在程式中代替其基類(父類)
設計模式之設計原則
設計模式 design pattern 是物件導向技術的最新進展之一,由於物件導向設計的靈活性,增加了其設計的複雜性,設計模式的出現就是為了提高復用的設計方案,讓 更容易被他人理解 保證 可靠性。設計模式於己於他人於系統都是多贏的,設計模式使 編制真正工程化,設計模式是軟體工程的基石,如同大廈的一塊...
設計模式之設計原則
1 單一職責原則 srp 1 就乙個類而言,應該僅有乙個引起它變化的原因。2 軟體設計真正要做的許多內容,就是發現職責並把那些職責相互分離。2 開放 封閉原則 1 軟體實體 類 模組 函式等等 對於擴充套件是開放的,對於更改是封閉的。2 在我們最初編寫 時,假設變化不會發生,當變化發生時,我們就建立...
設計模式之原則
前言 設計模式的原則是設計模式的需要遵守的規範,設計模式滿足的規則越多那麼這個模式也就越精闢,我們根據設計自己的 結構的時候要把遵循這些原則作為前提,否則維護時的代價就是巨大的。就乙個類而言,應該僅有乙個引起它變化的原因。這是什麼意思呢,就想我們如果在乙個類裡面包含了很多功能,比如訪問資料庫 運算演...