資源簡介
書籍目錄
目錄
第1章基本概念 1
1.1什么是設計模式 2
1.2設計模式的作用 3
1.3GRASP模式的分類 4
1.4GoF設計模式的分類 4
1.5模式的學習階段 6
第2章負責任地設計對象——GRASP 9
2.1InformationExpert(信息專家) 11
2.2Creator(創造者) 13
2.3LowCoupling(低耦合) 14
2.4HighCohesion(高內聚) 15
2.5Controller(控制器) 17
2.6Polymorphism(多態) 18
2.7PureFabrication(純虛構) 19
2.8Indirection(間接) 20
2.9ProtectedVariations(受保護變化) 21
第3章GoF-CreationalDesignPatterns創建型設計模式 23
3.1SimpleFactoryPattern(簡單工廠模式) 24
3.1.1定義 24
3.1.2現實例子——國旗生產廠 26
3.1.3C#實例1——電子付款系統 26
3.1.4C#實例2——學校登錄系統 29
3.1.5Java實例——手機簡單工廠 32
3.1.6優勢和缺陷 34
3.1.7應用情景 34
3.2FactoryMethodPattern(工廠方法模式) 35
3.2.1定義 35
3.2.2現實例子——兵工廠 36
3.2.3C#實例——多文檔系統 37
3.2.4Java實例——擴展了的手機工廠 41
3.2.5優勢和缺陷 44
3.2.6應用情景 44
3.3AbstractFactoryPattern(抽象工廠模式) 45
3.3.1定義 45
3.3.2現實例子——擴展了的兵工廠 48
3.3.3C#實例——大陸生態系統 49
3.3.4Java實例——電腦產品 52
3.3.5優勢和缺陷 57
3.3.6應用情景 57
3.4BuilderPattern(建造者模式) 58
3.4.1定義 58
3.4.2現實例子——快餐店 60
3.4.3C#實例——車間造車 61
3.4.4Java實例——建造房屋 65
3.4.5優勢和缺陷 69
3.4.6應用情景 70
3.5PrototypePattern(原型模式) 70
3.5.1定義 70
3.5.2現實中的拷貝-粘貼 71
3.5.3C#實例——顏色管理器 72
3.5.4Java實例——簡單ToolBar 74
3.5.5ShallowCopy與DeepCopy 76
3.5.6優勢和缺陷 82
3.5.7應用情景 82
3.6SingletonPattern(單例模式) 82
3.6.1定義 82
3.6.2現?抵械牡ダ??猈indowsTaskManager 83
3.6.3C#實例——負載均衡控制器 84
3.6.4Java實例——系統日志 86
3.6.5DoubleCheckLocking(雙檢鎖) 89
3.6.6優勢和缺陷 93
3.6.7應用情景 93
第4章GoF-StructuralDesignPatterns結構型設計模式 95
4.1AdapterPattern(適配器模式) 96
4.1.1定義 96
4.1.2現實中的實例——電腦電源適配器 97
4.1.3C#實例——化學數據銀行 98
4.1.4Java實例——清潔系統 102
4.1.5優勢和缺陷 104
4.1.6應用情景 104
4.2BridgePattern(橋接模式) 104
4.2.1定義 104
4.2.2現實中的實例——男人的約會 106
4.2.3C#實例——商業對象與數據對象 107
4.2.4Java實例——不同系統的圖像處理 112
4.2.5優勢和缺陷 114
4.2.6應用情景 115
4.3CompositePattern(組合模式) 115
4.3.1定義 115
4.3.2組合模式的現實應用——資源管理器 117
4.3.3C#實例——圖形樹狀對象結構 118
4.3.4Java實例——文檔格式化 121
4.3.5優勢和缺陷 124
4.3.6應用情景 125
4.4DecoratorPattern(裝飾模式) 125
4.4.1定義 125
4.4.2現實中的裝飾模式——相架 126
4.4.3C#實例——圖書館中的項目 127
4.4.4Java實例——自定義JButton 131
4.4.5優勢和缺陷 133
4.4.6應用情景 134
4.5FacadePattern(外觀模式) 134
4
代碼片段和文件信息
評論
共有 條評論