我的java設計模式學習之旅 - 設計模式簡介

1.什麼是設計模式

設計模式是從許多優秀的軟件系統中總結出成功的可複用的設計方案。建築大師Alexander給出過一個經典定義:"每一個設計模式描述一個在我們周圍不斷重複發生的問題,以及該問題的解決方案的核心,這樣,你就能一次次地使用該方案而不必做重複的勞動。"。

記錄一個設計模式有4個基本要素:

1、名稱:

一個模式的名稱,高度概括了該模式的本質,有利於行業統一術語,便於交流。

2、問題:

描述應該在何時使用該模式,解釋設計問題和問題存在的前因後果,描述在怎樣的場景下使用該模式。

3、方案:

描述方案的組成部分,它們之間的相互關係,以及各自的職責和協作方式。

4、效果:

描述模式的應用效果以及使用模式應該權衡的問題,主要效果包括使用模式對系統的靈活性,擴展性和複用性的影響。

所以,掌握一個設計模式,最基本是要能清晰描述一個設計模式的4個基本要素。


2.“23個設計模式”來源:

來源於外國4人在1994年合作出版的《Design Patterns: Elements of Reusable Obvject-Orientied Software 》,翻譯爲:“設計模式:可複用的面向對象軟件的基本原理”。也就是大名鼎鼎的四人幫之書,暱稱GOF。


3.學習設計模式的重要性:

易維護、易擴展、易複用,是一個好的設計系統的特點。而23種設計模式就是從很多好的設計系統中提取出來的部分模式,學習這些設計模式,不僅可以使我們用好這些成功的模式,更重要是能讓我們更加深刻地理解面向對象的設計思想,非常有利於我們更好的使用面向對象的思想來解決我們設計中的問題。 另外,學習了設計模式,對我們進一步學習、理解和掌握框架是非常有利的,比如JavaEE中就大量使用了設計模式。


4.合理使用模式

不是任何部分都要套用模式,模式是針對具體問題的。

避免教條:不滿足時,完全可以修改模式種的部分結構來符合實際設計需求。

避免亂用:模式不是發現的,是總結出來的,在設計時,要儘可能用最簡單的方式滿足系統要求,不要爲了模式而強行使用。


5.23中設計模式

創建型5種(工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式)

結構型7種()

 行爲型11中()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章