設計模式概述


一、設計模式概念與意義

  設計模式是一套代碼設計經驗的總結,為的是代碼重用,提高代碼可讀性。每種模式在現實中都能找到相對應的原理,符合面向對象的原則,把現實中的事物抽象成虛擬世界的對象。

  同時,在開發大型軟件時,很多時候需要一個框架,將軟件分成一個個功能模塊,以便多人的分工合作,因此框架設計中經常要使用設計模式。所以,學習設計模式有助於對框架結構的理解,以對整個代碼結構有清晰的認識,縮短軟件開發周期。

 

二、設計原則

1.單一職責原則(Single Responsibility Principle)

一個類應該只有一個引起它變化的原因。

2.開閉原則(Open Close Principle)

對擴展開放,對修改關閉。把抽象接口與實現相分離。

3.里氏轉換原則(Liskov Substitution Principle)

任何基類可以出現的地方,子類一定可以出現。對OCP的補充,OCP的關鍵是抽象化,而基類與子類的繼承關系就是抽象化的具體實現。

4.依賴倒轉原則(Dependence Inversion Principle)

OCP的基礎,針對接口編程,依賴於抽象而不依賴於具體。

5.接口隔離原則(Interface Segregation Principle)

使用多個專門的接口比使用單一的總接口要好。

6.迪米特法則(Demeter Principle)

一個對象應當對其它對象盡可能少地發生相互作用,使系統功能相對獨立。

7.合成/聚合復用原則(Composite/Aggregate Reuse Principle)

盡量使用合成/聚合,而不是使用繼承。

 

三、設計模式的類型

三類設計模式:

創建型模式:提供在創建對象時隱藏邏輯的方法,不使用new 運算符直接實例化對象。

1.工廠模式(Factory Pattern)

2.抽象工廠模式(Abstract Factory Pattern)

3.單例模式(Singleton Pattern)

4.建造者模式(Builder Pattern)

5.原型模式(Prototype Pattern)

 

結構型模式:關注類和對象的組合。繼承概念用來組合接口和定義組合對象獲得新功能。

1.適配器模式(Adapter Pattern)

2.橋接模式(Bridge Pattern)

3.過濾器模式(Filter Criteria Pattern)

4.組合模式(Composite Pattern)

5.裝飾器模式(Decorator Pattern)

6.外觀模式(Facade Pattern)

7.享元模式(Flyweight Pattern)

8.代理模式(Proxy Pattern)

 

行為型模式:關注對象之間的通信

1.責任鏈模式(Chain of Responsibility Pattern)

2.命令模式(Command Pattern)

3.解釋器模式(Interpreter Pattern)

4.迭代器模式(Iterator Pattern)

5.中介者模式(Mediator Pattern)

6.備忘錄模式(Memento Pattern)

7.觀察者模式(Observer Pattern)

8.狀態模式(State Pattern)

9.空對象模式(Null Object Pattern)

10.策略模式(Strategy Pattern)

11.模版模式(Template Pattern)

12.訪問者模式(Visitor Pattern)


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



設計模式 概述 設計模式概述 設計模式概述 設計模式概述 設計模式之概述 設計模式(1)------模式概述 EJB設計模式概述 淺析設計模式 - 概述 iOS設計模式 - (1)概述 [置頂] 設計模式概述
 
粤ICP备14056181号  © 2014-2020 ITdaan.com