大話設計模式pdf

圖書網
圖書網
圖書網
11145
文章
1734
評論
2019年7月4日20:01:31 16 861
摘要

《大話設計模式》是準備攀登面向對象編程高峰朋友們的引路人和提攜者;《大話設計模式》是學習、體會和領悟了眾多大師智慧結晶后的圖書作品;《大話設計模式》是你深入理解和感受GoF的《設計模式》及其它大師作品的必備書籍;《大話設計模式》授之以“魚”,更授之以“漁”。  
感受設計演變過程中所蘊含的大智慧,體會樂與怒的程序人生中值得回味的一幕幕。
設計模式的趣味解讀,面向對象的深入剖析。
在詼諧與溫馨中做一次面向對象編程思維的體操。

大話設計模式 內容簡介

本書通篇都是以情景對話的形式,用多個小故事或編程示例來組織講解GoF(設計模式的經典名著——Design Patterns:Elements of Reusable Object-Oriented Software,中譯本名為《設計模式——可復用面向對象軟件的基礎》的四位作者Erich Gamma、Richard Helm、Ralph Johnson,以及John Vlissides,這四人常被稱為Gang of Four,即四人組,簡稱GoF)總結的23個設計模式。本書共分為29章。其中,第1、3、4、5章著重講解了面向對象的意義、好處以及幾個重要的設計原則;第2章,以及第6到第28章詳細講解了23個設計模式;第29章是對設計模式的全面總結。附錄部分是通過一個例子的演變為初學者介紹了面向對象的基本概念。本書的特色是通過小菜與大鳥的趣味問答,在講解程序的不斷重構和演變過程中,把設計模式的學習門檻降低,讓初學者可以更加容易地理解——為什么這樣設計才是好的?是怎樣想到這樣設計的?以達到不但授之以“魚”,還授之以“漁”的目的。引導讀者體會設計演變過程中蘊藏的大智慧。

本書適合編程初學者或希望在面向對象編程上有所提高的開發人員閱讀。

大話設計模式 目錄

第1章 代碼無錯就是優?--簡單工廠模式

1.1 面試受挫

1.2 初學者代碼毛病

1.3 代碼規范

1.4 面向對象編程

1.5 活字印刷,面向對象

1.6 面向對象的好處

1.7 復制vs.復用

1.8 業務的封裝

1.9 緊耦合vs.松耦合

1.10 簡單工廠模式

1.11 UML類圖

第2章 商場促銷--策略模式

2.1 商場收銀軟件

2.2 增加打折

2.3 簡單工廠實現

2.4 策略模式

2.5 策略模式實現

2.6 策略與簡單工廠結合

2.7 策略模式解析

第3章 拍攝UFO--單一職責原則

3.1 新手機

3.2 拍攝

3.3 沒用的東西

3.4 單一職責原則

3.5 方塊游戲的設計

3.6 手機職責過多嗎?

第4章 考研求職兩不誤--開放-封閉原則

4.1 考研失敗

4.2 開放-封閉原則

4.3 何時應對變化

4.4 兩手準備,并全力以赴

第5章 會修電腦不會修收音機?--依賴倒轉原則

5.1 MM請求修電腦

5.2 電話遙控修電腦

5.3 依賴倒轉原則

5.4 里氏代換原則

5.5 修收音機

第6章 穿什么有這么重要?--裝飾模式

6.1 穿什么有這么重要?

6.2 小菜扮靚第一版

6.3 小菜扮靚第二版

6.4 裝飾模式

6.5 小菜扮靚第三版

6.6 裝飾模式總結

第7章 為別人做嫁衣--代理模式

7.1 為別人做嫁衣!

7.2 沒有代理的代碼

7.3 只有代理的代碼

7.4 符合實際的代碼

7.5 代理模式

7.6 代理模式應用

7.7 秀才讓小六代其求婚

第8章 雷鋒依然在人間--工廠方法模式

8.1 再現活雷鋒

8.2 簡單工廠模式實現

8.3 工廠方法模式實現

8.4 簡單工廠vs.工廠方法

8.5 雷鋒工廠

第9章 簡歷復印--原型模式

9.1 夸張的簡歷

9.2 簡歷代碼初步實現

9.3 原型模式

9.4 簡歷的原型實現

9.5 淺復制與深復制

9.6 簡歷的深復制實現

9.7 復制簡歷vs.手寫求職信

第10章 考題抄錯會做也白搭--模板方法模式

10.1 選擇題不會做,蒙唄!

10.2 重復=易錯+難改

10.3 提煉代碼

10.4 模板方法模式

10.5 模板方法模式特點

10.6 主觀題,看你怎么蒙

第11章 無熟人難辦事?--迪米特法則

11.1 第一天上班

11.2 無熟人難辦事

11.3 迪米特法則

第12章 牛市股票還會虧錢?--外觀模式

12.1 牛市股票還會虧錢?

12.2 股民炒股代碼

12.3 投資基金代碼

12.4 外觀模式

12.5 何時使用外觀模式

第13章 好菜每回味不同--建造者模式

13.1 炒面沒放鹽

13.2 建造小人一

13.3 建造小人二

13.4 建造者模式

13.5 建造者模式解析

13.6 建造者模式基本代碼

第14章 老板回來,我不知道--觀察者模式

14.1 老板回來?我不知道!

14.2 雙向耦合的代碼

14.3 解耦實踐一

14.4 解耦實踐二

14.5 觀察者模式

14.6 觀察者模式特點

14.7 觀察者模式的不足

14.8 事件委托實現

14.9 事件委托說明

14.10 石守吉失手機后的委托

第15章 就不能不換DB嗎?--抽象工廠模式

15.1 就不能不換DB嗎?

15.2 最基本的數據訪問程序

15.3 用了工廠方法模式的數據訪問程序

15.4 用了抽象工廠模式的數據訪問程序

15.5 抽象工廠模式

15.6 抽象工廠模式的優點與缺點

15.7 用簡單工廠來改進抽象工廠

15.8 用反射+抽象工廠的數據訪問程序

15.9 用反射+配置文件實現數據訪問程序

15.10 無癡迷,不成功

第16章 無盡加班何時休--狀態模式

16.1 加班,又是加班!

16.2 工作狀態-函數版

16.3 工作狀態-分類版

16.4 方法過長是壞味道

16.5 狀態模式

16.6 狀態模式好處與用處

16.7 工作狀態-狀態模式版

第17章 在NBA我需要翻譯--適配器模式

17.1 在NBA我需要翻譯!

17.2 適配器模式

17.3 何時使用適配器模式

17.4 籃球翻譯適配器

17.5 適配器模式的.NET應用

17.6 扁鵲的醫術

第18章 如果再回到從前--備忘錄模式

18.1 如果再給我一次機會……

18.2 游戲存進度

18.3 備忘錄模式

18.4 備忘錄模式基本代碼

18.5 游戲進度備忘

第19章 分公司=一部門--組合模式

19.1 分公司不就是一部門嗎?

19.2 組合模式

19.3 透明方式與安全方式

19.4 何時使用組合模式

19.5 公司管理系統

19.6 組合模式好處

第20章 想走?可以!先買票--迭代器模式

20.1 乘車買票,不管你是誰!

20.2 迭代器模式

20.3 迭代器實現

20.4 .NET的迭代器實現

20.5 迭代高手

第21章 有些類也需計劃生育--單例模式

21.1 類也需要計劃生育

21.2 判斷對象是否是null

21.3 生還是不生是自己的責任

21.4 單例模式

21.5 多線程時的單例

21.6 雙重鎖定

21.7 靜態初始化

第22章 手機軟件何時統一--橋接模式

22.1 憑什么你的游戲我不能玩

22.2 緊耦合的程序演化

22.3 合成/聚合復用原則

22.4 松耦合的程序

22.5 橋接模式

22.6 橋接模式基本代碼

22.7 我要開發"好"游戲

第23章 烤羊肉串引來的思考--命令模式

23.1 吃烤羊肉串!

23.2 燒烤攤vs.燒烤店

23.3 緊耦合設計

23.4 松耦合設計

23.5 松耦合后

23.6 命令模式

23.7 命令模式作用

第24章 加薪非要老總批?--職責鏈模式

24.1 老板,我要加薪!

24.2 加薪代碼初步

24.3 職責鏈模式

24.4 職責鏈的好處

24.5 加薪代碼重構

24.6 加薪成功

第25章 世界需要和平--中介者模式

25.1 世界需要和平!

25.2 中介者模式

25.3 安理會做中介

25.4 中介者模式優缺點

第26章 項目多也別傻做--享元模式

26.1 項目多也別傻做!

26.2 享元模式

26.3 網站共享代碼

26.4 內部狀態與外部狀態

26.5 享元模式應用

第27章 其實你不懂老板的心--解釋器模式

27.1 其實你不懂老板的心

27.2 解釋器模式

27.3 解釋器模式好處

27.4 音樂解釋器

27.5 音樂解釋器實現

27.6 料事如神

第28章 男人和女人--訪問者模式

28.1 男人和女人!

28.2 最簡單的編程實現

28.3 簡單的面向對象實現

28.4 用了模式的實現

28.5 訪問者模式

28.6 訪問者模式基本代碼

28.7 比上不足,比下有余

第29章 OOTV杯超級模式大賽--模式總結

29.1 演講任務

29.2 報名參賽

29.3 超模大賽開幕式

29.4 創建型模式比賽

29.5 結構型模式比賽

29.6 行為型模式一組比賽

29.7 行為型模式二組比賽

29.8 決賽

29.9 夢醒時分

29.10 沒有結束的結尾

附 錄 A 培訓實習生--面向對象基礎

A.1 培訓實習生

A.2 類與實例

A.3 構造方法

A.4 方法重載

A.5 屬性與修飾符

A.6 封裝

A.7 繼承

A.8 多態

A.9 重構

A.10 抽象類

A.11 接口

A.12 集合

A.13 泛型

A.14 委托與事件

A.15 客套

附 錄 B 參考文獻

大話設計模式 精彩文摘

設計模式有四境界:

1.沒學前是一點不懂,根本想不到用設計模式,設計的代碼很糟糕;

2.學了幾個模式后,很開心,于是到處想著要用自己學過的模式,于是時常造成誤用模式而不 自知;

3.學完全部模式時,感覺諸多模式極其相似,無法分清模式之間的差異,有困惑,但深知誤用之害,應用之時有所猶豫;

4.靈活應用模式,甚至不應用具體的某種模式也能設計出非常優秀的代碼,以達到無劍勝有劍的境界。

從作者本人的觀點來說,不會用設計模式的人要遠遠超過過度使用設計模式的人,從這個角度講,因為怕過度設計而不用設計模式顯然是因噎廢食。當你認識到自己有過度使用模式的時候,那就證明你已意識到問題的存在,只有通過不斷的鉆研和努力,你才能突破“不識廬山真面目,只緣身在此山中”的瓶頸,達到“會當凌絕頂,一覽眾山小”的境界。

編程語言的差異

本書講的是面向對象設計模式,是用.NET中的C#語言編寫,但本書并不是主要講解C#語言或.NET框架的圖書,因此本書同樣適合Java、VB.NET、C++等其他一些面向對象語言的讀者閱讀來學習設計模式。

就Java而言,主要差異來自C#對于子類繼承父類或實現接口用的都是“:”,而Java中兩者是有區別的。

當Cat繼承抽象類Animal時,Java

語法是public class Cat extends Animal

當Superman實現接口IFly時,Java語法是

public class Superman implements IFly

然后Java中所有的方法都是虛擬的,因此不用指定new或是override修飾符。還有一些其他差異,但基本都不影響本書的閱讀。

圖書網:大話設計模式pdf

繼續閱讀
資源地址:用心發表評論,回復即可查看(字數限制至少10字以上)。
  • 我的微信
  • 掃一掃加好友
  • weinxin
  • 微信公眾號
  • 掃一掃關注
  • weinxin
Spring+MyBatis企業應用實戰pdf 企業軟件開發與實施

Spring+MyBatis企業應用實戰pdf

適讀人群 :Java開發人員,在校計算機及相關專業學生 1.貼近實際項目,以案例驅動 本書針對每一個知識點都通過相應的程序給出了示范,所有應用范例都密切契合企業開發實際場景,例如用...
黑客攻防技術寶典 iOS實戰篇pdf 企業軟件開發與實施

黑客攻防技術寶典 iOS實戰篇pdf

黑客攻防技術寶典 iOS實戰篇 內容簡介 安全始終是計算機和互聯網領域重要的話題。進入移動互聯網時代,移動平臺和設備的安全問題更加突出。iOS系統憑借其在移動市場的占有率擁有著舉足輕重的地位。雖然iO...
高性能iOS應用開發pdf 企業軟件開發與實施

高性能iOS應用開發pdf

本書為有經驗的iOS開發者提供構建優異應用移動性能所需的開發建議和實踐,幫助讀者解決常見性能問題。 作者Gaurav Vaish從工程角度演示了編寫優質代碼的方法,詳盡介紹如何設計...
匿名

發表評論

匿名網友 填寫信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

評論:16   其中:訪客  16   博主  0
    • (^_^) (^_^) 9

      不錯

        • 語文 語文 1

          @ (^_^) 不錯哦

        • qq123456 qq123456 9

          不錯

          • 語文 語文 1

            真心不錯

            • zzz zzz 0

              啊實打實的

              • angeldjxt angeldjxt 9

                haohao不錯,不錯

                • 土豆321 土豆321 9

                  實打實的

                  • 土豆321 土豆321 9

                    謝謝分享!!!

                    • health health 9

                      我發現了寶貝,笑哭

                      • 菜牙子 菜牙子 9

                        本書講述非常清晰

                        • 菜牙子 菜牙子 9

                          值得學習