關於設計模式的定義,什麼是設計模式?

      我是在前年的時候開始深刻接觸C#的,因此,爲何說是深刻呢,大學裏面學過C#,可是,大學的學習大家是懂。剛進公司的三個多月,一直都是在熟悉C#的語法,後來個人頭就讓我作一個計算器的例子(基本上你們都作過這個例子),而後就直接作了,結果可想而知,運行時能夠運行,可是隻有一個class,頭看了以後,就讓我去看一下什麼叫作工廠模式。這個時候才知道有設計模式這個東西,因而在度娘中各類搜索設計模式(那時候只會度娘),再次以後有看了吳強的《大話設計模式》,不得不說對我這種菜鳥來講,這本書就是大肥蟲,通俗簡單易懂,看了讓人恍然大悟,原來代碼還能夠這麼玩。在那以後就沒有看過設計模式的書,可是實際代碼中仍是用到不少種設計模式,例如單例,組合等等,這都是經常使用的。前幾天個人頭在網上找了不少書,而後他也發了我一份,他跟我說首先看《C#設計模式》這本書。在看完第一章的時候,我就在問本身,什麼是設計模式?這玩意有定義嗎?一句話感受本身就懵了,感受本身好像這章什麼都沒看懂,因而從頭在看,這時候纔看到這本書裏提到的有關定義:設計模式

  1. 設計模式是對讀者常常遇到的設計問題的可在線的解決方案。(The Smalltalk Companion)
  2. 設計模式創建了一系列如何完成軟件開發領域中特定任務的規則(Pree 1995)。
  3. 設計模式更關注與複用可重複出現的結構設計方案,而框架注重於具體設計和實現(Coplien and Schmidt 1995)。
  4. 模式提出了一個發生在特定設計環境中的可重複出現的設計問題,並提供瞭解決方案(Buschmann et al. 1996)
  5. 模式識別並肯定類和實例層次上或組件層次上的抽象關係(Gamma,Johnson,and Wlissides,1993)。

      其實看完這些定義以後,設計模式仍是沒有一個清晰的樣子,從百度上搜到的設計模式定義無外乎從以上的定義演化而來,在我理解,設計模式是一種規則,可是並非每一個人都要遵循,就像法律和道德規範同樣,雖然這樣比喻不大好,可是很相似,每一個人的理解都不同,不知道你們有沒有更通俗易懂的說法。框架

-------------------------------------------------------------ide

剛剛在網上無心找到的,這段話上半部分就是上面的五條:學習

設計模式在設計者是一種流行的思考設計問題的方法,是一套被反覆使用,多數人知曉的,通過分類編目的,代碼設計經驗的總結。
使用了設計模式,是爲了使代碼具備可重用性,讓代碼更容易被他人理解和保證代碼的可靠性。設計

相關文章
相關標籤/搜索