1. 程式人生 > 實用技巧 >設計模式介紹

設計模式介紹

設計模式簡介

  • 由來:是軟體開發人員在軟體開發過程中面臨的一般問題的解決方案。這些解決方案是眾多軟體開發人員經過相當長的一段時間的試驗和錯誤總結出來的
  • 好處:為了重用程式碼、讓程式碼更容易被他人理解、保證程式碼可靠性
  • 壞處:對不熟悉設計模式的同學,看起來更繞更難理解

什麼是GOF(Gang of Four)

在 1994 年,由 四位作者合稱 GOF(全拼 Gang of Four)四人合著出版了一本名為 Design Patterns - Elements of Reusable Object-Oriented Software. 他們所提出的設計模式主要是基於以下的面向物件設計原則。
1)對介面程式設計而不是對實現程式設計。
2)優先使用物件組合而不是繼承

常見的設計模式的三大分類

  1. 建立型模式
    提供了一種在建立物件的同時隱藏建立邏輯的方式,使得程式在判斷針對某個給定例項需要建立哪些物件時更加靈活
常用的建立型設計模式:介面卡模式、橋接模式、裝飾器模式、代理模式
不常用的建立型設計模式:組合模式、外觀模式、享元模式
  1. 結構性模式
    關注類和物件的組合。繼承的概念被用來組合介面和定義組合物件獲得新功能的方式
常用:介面卡模式、橋接模式、裝飾器模式、代理模式
不常用:組合模式、外觀模式、享元模式、
  1. 行為型模式
    特別關注物件之間的通訊
常用:責任鏈模式、迭代器模式、觀察者模式、狀態模式、策略模式、模板模式  
不常用:備忘錄模式、命令模式  
幾乎不用:訪問者模式、中介者模式、直譯器模式