編輯推薦
詳細講解7個麵嚮對象設計原則和24個常用設計模式
學練結閤,包含超過150道習題和3套設計模式模擬試題
內容簡介
本書使用C#語言詳細講解瞭24種設計模式。全書共分為26章,內容包括設計模式概述、麵嚮對象設計原則、簡單工廠模式、工廠方法模式、抽象工廠模式、建造者模式、原型模式、單例模式、適配器模式、橋接模式、組閤模式、裝飾模式、外觀模式、享元模式、代理模式、職責鏈模式、命令模式、解釋器模式、迭代器模式、中介者模式、備忘錄模式、觀察者模式、狀態模式、策略模式、模闆方法模式和訪問者模式。
本書結閤大量項目應用實例,對每一個設計模式都進行瞭細緻的講解。本書結構閤理、條理清晰、內容豐富,且在每一章後麵都配有大量的習題,在附錄中還提供瞭對UML類圖相關知識的介紹和三套設計模式模擬試題。
本書既可作為高等院校計算機及軟件相關專業本科生和研究生軟件設計模式、軟件體係結構、麵嚮對象分析與設計等課程教材,也可作為各軟件培訓機構培訓教材及全國計算機技術與軟件專業技術資格(水平)考試輔導教材,還可作為軟件架構師、軟件工程師及廣大軟件愛好者的自學讀本和參考用書。
目錄
目錄
第1章設計模式概述
1.1設計模式的誕生與發展
1.1.1模式的誕生與定義
1.1.2軟件模式概述
1.1.3設計模式的發展
1.2設計模式的定義與分類
1.2.1設計模式的定義
1.2.2設計模式的基本要素
1.2.3設計模式的分類
1.3GoF設計模式簡介
1.4設計模式的優點
1.5本章小結
1.6習題
第2章麵嚮對象設計原則
2.1麵嚮對象設計原則概述
2.2單一職責原則
2.3開閉原則
2.4裏氏代換原則
2.5依賴倒轉原則
2.6接口隔離原則
2.7閤成復用原則
2.8迪米特法則
2.9本章小結
2.10習題
第3章簡單工廠模式
3.1創建型模式
3.2簡單工廠模式概述
3.3簡單工廠模式的結構與實現
3.3.1簡單工廠模式的結構
3.3.2簡單工廠模式的實現
3.4簡單工廠模式的應用實例
3.5創建對象與使用對象
3.6簡單工廠模式的簡化
3.7簡單工廠模式的優缺點與適用環境
3.7.1簡單工廠模式的優點
3.7.2簡單工廠模式的缺點
3.7.3簡單工廠模式的適用環境
3.8本章小結
3.9習題
第4章工廠方法模式
4.1工廠方法模式概述
4.2工廠方法模式的結構與實現
4.2.1工廠方法模式的結構
4.2.2工廠方法模式的實現
4.3工廠方法模式的應用實例
4.4配置文件與反射
4.5工廠方法的重載
4.6工廠方法的隱藏
4.7工廠方法模式的優缺點與適用環境
4.7.1工廠方法模式的優點
4.7.2工廠方法模式的缺點
4.7.3工廠方法模式的適用環境
4.8本章小結
4.9習題
第5章抽象工廠模式
5.1産品等級結構與産品族
5.2抽象工廠模式概述
5.3抽象工廠模式的結構與實現
5.3.1抽象工廠模式的結構
5.3.2抽象工廠模式的實現
5.4抽象工廠模式的應用實例
5.5開閉原則的傾斜性
5.6抽象工廠模式的優缺點與適用環境
5.6.1抽象工廠模式的優點
5.6.2抽象工廠模式的缺點
5.6.3抽象工廠模式的適用環境
5.7本章小結
5.8習題
第6章建造者模式
6.1建造者模式概述
6.2建造者模式的結構與實現
6.2.1建造者模式的結構
6.2.2建造者模式的實現
6.3建造者模式的應用實例
6.4指揮者類的深入討論
6.5建造者模式的優缺點與適用環境
6.5.1建造者模式的優點
6.5.2建造者模式的缺點
6.5.3建造者模式的適用環境
6.6本章小結
6.7習題
第7章原型模式
7.1原型模式概述
7.2原型模式的結構與實現
7.2.1原型模式的結構
7.2.2淺剋隆與深剋隆
7.2.3原型模式的實現
7.3原型模式的應用實例
7.4原型管理器
7.5原型模式的優缺點與適用環境
7.5.1原型模式的優點
7.5.2原型模式的缺點
7.5.3原型模式的適用環境
7.6本章小結
7.7習題
第8章單例模式
8.1單例模式概述
8.2單例模式的結構與實現
8.2.1單例模式的結構
8.2.2單例模式的實現
8.3單例模式的應用實例
8.4餓漢式單例與懶漢式單例
8.5單例模式的優缺點與適用環境
8.5.1單例模式的優點
8.5.2單例模式的缺點
8.5.3單例模式的適用環境
8.6本章小結
8.7習題
第9章適配器模式
9.1結構型模式
9.2適配器模式概述
9.3適配器模式的結構與實現
9.3.1適配器模式的結構
9.3.2適配器模式的實現
9.4適配器模式的應用實例
9.5缺省適配器模式
9.6雙嚮適配器
9.7適配器模式的優缺點與適用環境
9.7.1適配器模式的優點
9.7.2適配器模式的缺點
9.7.3適配器模式的適用環境
9.8本章小結
9.9習題
第10章橋接模式
10.1橋接模式概述
10.2橋接模式的結構與實現
10.2.1橋接模式的結構
10.2.2橋接模式的實現
10.3橋接模式的應用實例
10.4橋接模式與適配器模式聯用
10.5橋接模式的優缺點與適用環境
10.5.1橋接模式的優點
10.5.2橋接模式的缺點
10.5.3橋接模式的適用環境
10.6本章小結
10.7習題
第11章組閤模式
11.1組閤模式概述
11.2組閤模式的結構與實現
11.2.1組閤模式的結構
11.2.2組閤模式的實現
11.3組閤模式的應用實例
11.4透明組閤模式與安全組閤模式
11.5組閤模式的優缺點與適用環境
11.5.1組閤模式的優點
11.5.2組閤模式的缺點
11.5.3組閤模式的適用環境
11.6本章小結
11.7習題
第12章裝飾模式
12.1裝飾模式概述
12.2裝飾模式的結構與實現
12.2.1裝飾模式的結構
12.2.2裝飾模式的實現
12.3裝飾模式的應用實例
12.4透明裝飾模式與半透明裝飾模式
12.5裝飾模式的優缺點與適用環境
12.5.1裝飾模式的優點
12.5.2裝飾模式的缺點
12.5.3裝飾模式的適用環境
12.6本章小結
12.7習題
第13章外觀模式
13.1外觀模式概述
13.2外觀模式的結構與實現
13.2.1外觀模式的結構
13.2.2外觀模式的實現
13.3外觀模式的應用實例
13.4抽象外觀類
13.5外觀模式的優缺點與適用環境
13.5.1外觀模式的優點
13.5.2外觀模式的缺點
13.5.3外觀模式的適用環境
13.6本章小結
13.7習題
第14章享元模式
14.1享元模式概述
14.2享元模式的結構與實現
14.2.1享元模式的結構
14.2.2享元模式的實現
14.3享元模式的應用實例
14.4有外部狀態的享元模式
14.5單純享元模式和復閤享元模式
14.6享元模式的優缺點與適用環境
14.6.1享元模式的優點
14.6.2享元模式的缺點
14.6.3享元模式的適用環境
14.7本章小結
14.8習題
第15章代理模式
15.1代理模式概述
15.2代理模式的結構與實現
15.2.1代理模式的結構
15.2.2代理模式的實現
15.3代理模式的應用實例
15.4遠程代理
15.5虛擬代理
15.6緩衝代理
15.7代理模式的優缺點與適用環境
15.7.1代理模式的優點
15.7.2代理模式的缺點
15.7.3代理模式的適用環境
15.8本章小結
15.9習題
第16章職責鏈模式
16.1行為型模式
16.2職責鏈模式概述
16.3職責鏈模式的結構與實現
16.3.1職責鏈模式的結構
16.3.2職責鏈模式的實現
16.4職責鏈模式的應用實例
16.5純與不純的職責鏈模式
16.6職責鏈模式的優缺點與適用環境
16.6.1職責鏈模式的優點
16.6.2職責鏈模式的缺點
16.6.3職責鏈模式的適用環境
16.7本章小結
16.8習題
第17章命令模式
17.1命令模式概述
17.2命令模式的結構與實現
17.2.1命令模式的結構
17.2.2命令模式的實現
17.3命令模式的應用實例
17.4實現命令隊列
17.5記錄請求日誌
17.6實現撤銷操作
17.7宏命令
17.8命令模式的優缺點與適用環境
17.8.1命令模式的優點
17.8.2命令模式的缺點
17.8.3命令模式的適用環境
17.9本章小結
17.10習題
精彩書摘
第3章簡單工廠模式
本章導學
創建型模式關注對象的創建過程,是一類最常見的設計模式,在軟件開發中的應用非常廣泛。創建型模式描述如何將對象的創建和使用分離,讓用戶在使用對象時無須關心對象的創建細節,從而降低係統的耦閤度,讓設計方案更易於修改和擴展。
簡單工廠模式是最簡單的設計模式之一,它雖然不屬於GoF的23種設計模式,但是應用也較為頻繁,同時它也是學習其他創建型模式的基礎。在簡單工廠模式中,隻需要記住一個簡單的參數即可獲得所需的對象實例,它提供專門的核心工廠類來負責對象的創建,實現對象的創建和使用分離。
本章將對6種創建型模式進行簡要的介紹,並通過實例來學習簡單工廠模式,理解簡單工廠模式的結構及特點,學習如何在實際軟件項目開發中閤理地使用簡單工廠模式。
本章知識點
�r 創建型模式。
�r 簡單工廠模式的定義。
�r 簡單工廠模式的結構。
�r 簡單工廠模式的實現。
�r 簡單工廠模式的應用。
�r 簡單工廠模式的優缺點。
�r 簡單工廠模式的適用環境。
3.1創建型模式
軟件係統在運行時,類將實例化成對象,並由這些對象協作完成各項業務功能。創建型模式(Creational Pattern)關注對象的創建過程,是一類最常用的設計模式,在軟件開發中的應用非常廣泛。創建型模式對類的實例化過程進行瞭抽象,能夠將軟件模塊中對象的創建和對象的使用分離,對用戶隱藏瞭類的實例創建細節。
創建型模式描述如何將對象的創建和使用分離,讓用戶在使用對象時無須關心對象的創建細節,從而降低係統的耦閤度,讓設計方案更易於修改和擴展。每一個創建型模式都通過采用不同的解決方案來迴答3個問題: 創建什麼(What),由誰創建(Who)和何時創建(When)。
在GoF設計模式中,包含5種創建型模式,通常將一種非GoF設計模式——簡單工廠模式作為學習其他工廠模式的基礎,這6種設計模式的名稱、定義、學習難度和使用頻率如錶3��1所示。
C#設計模式(第2版)/高等學校設計模式課程係列教材 下載 mobi epub pdf txt 電子書