程式開發中的設計模式彙總整理
阿新 • • 發佈:2019-01-10
在我們日常開發過程中設計模式伴隨著專案的各個模組,合理地使用設計模式可以讓我們寫出更高效、簡潔的程式碼。
淺談設計模式的優缺點
什麼是設計模式
設計模式是為了解決特定場景下的問題而定製的解決方案。
優點
- 合理的使用設計模式可以減低程式碼耦合、提高程式碼的複用率
- 合理的使用設計模式能使專案結構變得清晰
- 合理的使用時機模式可以使程式碼更容易維護
缺點
- 使用設計模式在一定程度上會增加程式碼的類別和程式碼量
設計模式的基本原則
開閉原則(OCP)
對模組擴充套件開放,對修改關閉,.m 檔案裡邊的程式碼不改變
里氏替換原則(LSP)
任何類可以出現的地方,子類一定可以出現,子類跟父類相互替換,子類可以用父類所有的方法
多型:重寫父類方法
儘量不要重寫父類本身的實現邏輯
依賴倒轉原則(DIP)
抽象不依賴與細節,細節依賴於抽象(一般指的是介面)
介面隔離原則(ISP)
接口裡邊只做必要的事情,不做其他無關的事情
合成、聚合複用原則(CARP)
從一個類擴展出另外一種方法,儘量不要使用繼承,要使用其他的方法
最小知識原則(PLK)
兩個類之間沒有彼此直接通訊,而是使用另一個類來通訊
單一職責原則(SRP)
一個類只負責一個功能領域
設計模式的型別
- GOF 設計模式
- 併發設計模式
- 框架級別設計模式
23種設計模式的分類
建立型模式:5種
- 工廠模式
- 抽象工廠模式
- 建造者模式
- 原型模式
- 單例模式
結構型模式:7種
- 代理模式
- 組合模式
- 橋接模式
- 享元模式
- 外觀模式
- 裝飾模式
- 介面卡模式
行為型模式:11種
- 觀察者模式
- 訪問者模式
- 中介者模式
- 直譯器模式
- 策略模式
- 迭代器模式
- 命令模式
- 狀態模式
- 備忘錄模式
- 模板方法模式
- 責任鏈模式
簡單介紹MVC 中的設計模式
程式開發過程中常用的設計模式就是這23種,簡單先介紹到這裡,後續的部落格中會一一介紹常用 的幾種設計模式。