設計模式概述


前言

大約在一年前學習過一段時間的設計模式,但是當時自己的學習方式比較低效,也沒有深刻的去理解、運用所學的知識.

所以現在准備系統的再重新學習一遍,寫一個關於設計模式的系列博客.

廢話不多說,正文開始.

1. 設計模式是什么

設計模式是一套被反復使用、多數人知曉的、經過分類編目的、代碼設計經驗的總結,使用設計模式是為了可重用代碼、讓代碼更容易被他人理解並且保證代碼可靠性.

2. 學習設計模式的好處

  1. 提高開發效率,使用設計模式可以避免我們做一些重復工作
  2. 減少開發人員的溝通成本.
  3. 閱讀源碼,更深入的理解使用的框架和類庫
  4. 自己寫出靈活性高、易維護、易擴展和易復用的代碼

3. 設計模式的分類

根據用途設計模式可分為創建型、結構型和行為型三種

3.1 創建型設計模式

創建型模式是處理對象創建的設計模式,試圖根據實際情況使用合適的方式創建對象。

5種創建型設計模式(簡單工廠模式不算):

3.2 結構型設計模式

結構型設計模式是借由一以貫之的方式來了解元件間的關系,以簡化設計.

一以貫之: 指做人做事,按照一個道理,從一而終,出自《論語·里仁》。

注: 以上是百科的解釋,一以貫之是我自己百度貼上的,又能學到技術又能學到成語,看這篇博客賺翻了有沒有.

七種結構型設計模式:

  • 適配器模式
  • 橋接模式
  • 組合模式
  • 裝飾者模式
  • 外觀模式
  • 享元模式
  • 代理模式

3.3 行為型設計模式

行為型設計模式是用來識別對象之間的常用交流模式並加以實現。如此,可在進行這些交流活動時增強彈性.

十一種行為型設計模式:

  • 職責鏈模式
  • 命令模式
  • 解釋器模式
  • 迭代器模式
  • 中介者模式
  • 備忘錄模式
  • 觀察者模式
  • 狀態模式
  • 策略模式
  • 模板方法模式
  • 訪問者模式

4. 學習設計模式的一些其他准備工作

學習設計模式還需要一些其他的知識儲備,例如:

  • UML類圖相關知識(部分示例使用UML類圖演示,如沒有相關知識,請移步我的上一篇博客 UML類圖簡介)
  • 了解面向對象設計原則

5. 面向對象設計原則

移步 -> 面向對象設計原則

6. 主要參考文獻

大話設計模式

Java設計模式

7. 代碼&類圖下載地址

github地址


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM