設計模式精解 第五章 設計模式簡介

2021-04-01 04:39:43 字數 887 閱讀 9365

首先,設計模式和物件導向設計是互為補充.對於設計模式的資料,看上去抽象,甚至比較哲學.但是我們需要理解他們.要學習的是設計模式的思想.

設計模式是從建築學和人類學發展起來的.這兩者都認為"美"的,優秀的設計是有客觀的標準的.christopher alexander這個建築師對設計模式的研究起了很大的作用.他首先有個信念,那就是"設計的質量可以客觀衡量".為了研究這個問題,他開始對各種建築進行觀察.他採用這樣的研究方式--觀察解決相似問題的不同解決方案,找出不同方案的相似之處.之所以用這個方式,是因為他明白,結構和它要解決的問題是不能分離的.他把這些相似之處稱為"模式".他給模式下的定義是"在某乙個情景下的問題的解決方案".

每個模式,通過一種讓你可以無數次使用這一解決方案,而不必再次重複同樣工作的方式,描述乙個在我們的環境中重複出現的問題,並描述該問題的核心.

alexander說乙個模式的說明應該包含四個部分,我們來看看. 第乙個是模式的名稱.這樣人們就可以來鑑別模式,用於交流. 第二個是模式的目的,它要解決的問題.(模式就是為了解決問題).第三個是我們如何實現它.也就是模式的具體實現.第四個是為了實現我們必須考慮的限制和約束.

alexander相信模式可以解決特定問題,並且,複雜的問題可以用模式的組合來解決.

alexander的理論在建築學獲得成功,那麼對軟體是否有用呢?答案是肯定的.講述設計模式比較著名的書是"四人團"寫的《設計模式:可復用物件導向軟體的基礎》.

本章中,作者給出了模式的一些基本要素,我們羅列下

作者然後論述了下為什麼要學習設計模式.比較重要的是三個方面.

模式給你乙個更高層次的視角

復用解決方案

建立通用的術語

另外,四人團針對"建立優秀物件導向設計"建議了一些策略.我們需要牢記在心.

這些策略對於改良設計有莫大的幫助.我們要時刻牢記.

js 設計模式 第五章 單例模式

單例模式 why?1 解決global variables 過多的問題。dom,event,這裡 就是個單例物件,所有的dom及event都放在 裡面,不用再放在global域 how?將用到的屬性和方法都放在乙個單例裡面,這樣,這些屬性和方法將不會汙染全域性空間 what?最簡單的單例模式 var...

第五章 模式匹配

第五章 模式匹配 b 匹配乙個字元邊界 t 匹配乙個普通水平製表字元 bar 匹配的是barrr 5.2 模式匹配操作符 m 用於匹配乙個模式,s 用於將某個符合模式的子字元竄代換為某個子串 每次成功匹配了乙個模式 包括替換中的模式 操作符都會把變數 分別設定為 匹配內容左邊內容,匹配的內容和匹配內...

Head First 設計模式之第五章 單例模式

在物件導向中,乙個類可以建立無數個物件,但有時候需要對類新增一種限制,即 這個類只能建立乙個物件。這初次聽起來感覺有點奇怪,但是仔細一想,還是有很多場景需要滿足這樣的需求的。如日誌類 狀態機類 引數配置類等等。如日誌類,它只可以建立乙個物件,每次使用時,就直接呼叫這個物件,將所有資訊均輸出到同乙個日...