1.?設計模式是什么?
設計模式是開發中解決常見問題的經典方案。設計模式并非具體代碼,而是解決問題的通用解決方案,幫助開發者避免重復造輪子,提升代碼的可維護性、可擴展性。
2.?設計模式的歷史
設計模式起源于建筑領域,由克里斯托弗·亞歷山大提出,并由GoF(四人組)引入軟件工程。設計模式在開發中得到了廣泛應用,為面向對象設計提供了標準化的解決方案。
3.?設計模式分類
-
創建型模式:管理對象的創建方式,增加代碼靈活性。
-
結構型模式:簡化復雜對象之間的結構。
-
行為型模式:定義對象之間如何交互和職責分配。
4.?設計模式匯總
4.1.?創建型模式
創建型設計模式描述的是 "怎樣創建對象",它的主要特點是將 對象的創建和使用分離,這使得程序在創建對象與使用對象時更加靈活。創建型模式有:
-
工廠方法模式
-
抽象工廠模式
-
單例模式
-
建造者模式
-
原型模式
4.2.?結構型模式
結構型設計模式描述的是 "如何將類和對象按照某種布局組成更大的結構",這種類型的設計模式 關注的是類和對象的組合。結構型模式有:
-
代理模式
-
適配器模式
-
裝飾器模式
-
橋接模式
-
組合模式
-
外觀模式
-
享元模式
4.3.?行為型設計模式
行為型設計模式描述的是 "類或對象之間怎樣相互協作以及怎樣分配各自的職責,完成單個類或對象無法完成的任務"。行為型設計模式有:
-
觀察者模式
-
發布訂閱模式
-
模板方法模式
-
策略模式
-
責任鏈模式
-
中介者模式
-
訪問者模式
-
命令模式
-
解釋器模式
-
迭代器模式
-
備忘錄模式
-
狀態模式
5.?補充資料
-
重構設計模式:設計模式目錄:22種設計模式
-
詳盡設計模式:https://github.com/guang19/framework-learning/blob/dev/design_pattern/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F%E7%AE%80%E4%BB%8B.md
-
圖解設計模式:圖說設計模式 — Graphic Design Patterns
-
設計模式:可復用面向對象軟件的基礎:設計模式 | design-patterns