鳥瞰設計模式

GoF老法師私藏

GoF設計模式結構圖

個人的一些看法

我認為學習設計模式比較好的方法是這樣的:

  • 先大致的瀏覽一遍各種模式,看到每種模式粗略的輪廓,能夠復述出一些主要模式的特征
  • 針對一些常用的模式深入理解(不要一下子把二十幾種設計模式搞得面面俱到,倒背如流)
  • 比較不同的模式,尤其是一些有共同特點的模式之間的差別
  • 比較同一種模式在不同的文檔上的表述
  • 理解不同模式的適用場景,多找一些具體的例子(從大量具體的例子中,讓大腦自己來上升到抽象)
  • 比較運用這種模式和不運用這種模式的差別,總結使用這種模式之后帶來的好處
  • 對擴展開放,對修改關閉,總結出擴展的方面以及修改的方面
  • 在需要時,再去深入理解那些平時不太用到的模式

運用模式,而不要陷入到模式中,模式本身是為了讓問題變得更易于解決,而不是讓問題變得更加復雜。不要著眼于模式本身。學習設計模式的根本目的,是為了寫出靈活性更高、擴展性更好的軟件,而不是為了面試或者炫耀,看再多的書都不代表學會了設計模式,只有運用到自己的項目中,并且真正體現了某種設計模式的價值,那才算是學會了這種設計模式。學其他東西也是類似。最好是先從一種不好的設計開始,探討當需求變化時(比如增加新的類別,或者新的功能),這種不要的設計

常用的模式

常用與否并無定論,關鍵是看場合,但是一開始入手,還是需要有一個范圍,能夠讓人有的放矢。對此,我想最好的入門參考書無疑是《Head First Design Pattern》,那么就以此為綱,將上面所列的設計模式先深入挖掘一下。<br />
Head First Design Pattern詳細探討的模式

  • Behavioral
  • Observer
  • Command
  • Iterator
  • Template Method
  • State
  • Structural
  • Strategy
  • Decorator
  • Adapter
  • Facade
  • Composite
  • Proxy
  • Creational
  • Factory Method
  • Abstract Factory
  • Singleton

設計模式按照難度來劃分

  • Beginner
  • Behavioral
    • Observer
    • Iterator
    • Template Method
  • Structural
    • Strategy
    • Decorator
    • Adapter
    • Facade
    • Proxy
  • Creational
    • Factory Method
    • Singleton
  • Intermediate
  • Behavioral
    • Chain of responsibility
    • Command
    • Composite
    • Interpreter
    • Mediator
    • Memento
    • State
    • Visitor
  • Structural
    • Bridge
    • Flyweight
  • Creational
    • Abstract Factory
    • Builder

設計模式資源網站

java design patterns

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,058評論 25 709
  • 設計模式匯總 一、基礎知識 1. 設計模式概述 定義:設計模式(Design Pattern)是一套被反復使用、多...
    MinoyJet閱讀 4,093評論 1 15
  • ?? 對設計模式的極簡說明!?? 這個話題可以輕易讓任何人糊涂。現在我嘗試通過用 最簡單 的方式說明它們,來讓你(和我...
    月球人simon閱讀 1,161評論 1 2
  • 買衣服的時候, 我會讓你幫忙, 聽你安排, 除了欣賞你挑剔的可愛, 還因為, 我所有的搭配, 都只穿予你。
    湛兮閱讀 258評論 0 0
  • 隨喜。
    獨忘川岸閱讀 227評論 0 0

友情鏈接更多精彩內容