一、設計模式的分類
1.根據目的分類
1)建立型模式,此類模式主要用於建立物件。(工廠模式,建造者模式等等)
2)結構型模式,此類模式主要用於處理類或物件的組合(介面卡模式,橋接模式等等)
3)行為型模式,此類模式主要用於描述類或物件如何 互動和怎樣分配職責。(職責鏈模式,命令模式等等)
注:碰到問題首先匹配問題和型別然後對症下藥方能水到渠成
2.根據範圍分類
1)類模式:此類模式處理類和子類之間的關係 ,這些關係通過 繼承建立,在編譯時就被確定下來, 是一種靜態關係
2)物件模式:此類模式處理物件間的關係,這些關係在執行時變化,更具動態性
二、設計模式的優點
1)設計模式融合眾多專家的經驗,並以一種 標準的形式供廣大開發人員所用,它提供了一套通用的設計詞彙和一種通用的語言,以方便開發人員之間進行交流使得設計方案更加通俗易懂。
2)設計模式讓人們可以更加簡單方便地利用成功的設計和體系結構,將已證實的技術表述成設計模式也可使新系統開發才更加容易理解其設計思路
3)設計模式使得設計方案更加靈活且易於修改。
4)設計模式的使用將提高軟體系統的開發效率和軟體質量,且在一定程度上節約設計成本。
5)設計模式有助於初學者更深入地理解物件導向思想,一方面可以幫助初學者更加方便地閱讀和學習現有類庫中與其它系統中的源**,另一方面還可以提高軟體的設計水平和**質量
三、物件導向設計原則
1.單一職責原則:乙個物件應該只包含單一的職責,並且該職責被完整地封裝在乙個類中
2開閉原則:軟體實體應當時對擴充套件開放,對修改關閉
3.黎克特制代換原則:所有引用基類的地方必須能透明地使用其子類的物件
4.依賴倒置原則:高層模組不應該依賴低層模組,它們都 應該依賴抽象,抽象不應該依賴於細節,細節應該依賴於抽象
5。介面隔離原則:客戶不應該依賴那些它不需要的介面
6.合成利用原則:優先全用物件組合,而不是繼承來達到利用的目的
初遇設計模式
今天開始學設計模式了。用的是程杰老師寫的 大話設計模式 在網上搜了一下這位老師的資料,簡單的了解一下這位大牛。那麼什麼是設計模式?design pattern 設計模式 design pattern 是一套被反覆使用 多數人知曉的 經過分類編目的 設計經驗的總結。使用設計模式是為了可重用 讓 更容易...
設計模式初理解
設計模式學習完了,當然是要總結一下的。學習設計模式當然首先要了解什麼是模式啦,模式呢,就是在特定的環境下人們解決某類重複的出現的問題的一套成功或者有效的解決方案。我們從事軟體設計的人員應該了解到在軟體開發生命週期的每乙個階段都存在一些被認同的模式。軟體的模式分為四部分 分別是問題描述 前提條件 解決...
初談設計模式
簡介 現在模式設計從很早之前的面相過程的原則到現在的面相物件的原則 object oriented簡稱oo 設計模式在軟體開發過程中是個必不可少的知識點。或許許多剛開始編寫 或沒有維護過產品的人很少體驗過設計模式的重要性,但是運用恰當的設計模式,能極大減少需求變更的代價和 重構的風險。大綱使用模式的...