本书以作者自身学习、使用模式和多年来为软件开发人员(包括面向对象技术老兵和新手)讲授模式的经验为基础撰写而成。概述了模式的基础知识,以及面向对象分析和设计在当代软件开发中的重要性,使用易懂的示例代码阐明了12个最常用的模式,使读者能够理解模式背后的基本原则和动机,理解为什么它们会这样运作。
本书适合软件开发专业人士,以及计算机专业、软件工程专业的高校师生阅读,也可作为面向对象分析与设计课程的参考教材。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | 设计模式解析(第2版)/程序员修炼系列/图灵程序设计丛书 |
分类 | |
作者 | (美)沙洛维//特罗特 |
出版社 | 人民邮电出版社 |
下载 | ![]() |
简介 | 编辑推荐 本书以作者自身学习、使用模式和多年来为软件开发人员(包括面向对象技术老兵和新手)讲授模式的经验为基础撰写而成。概述了模式的基础知识,以及面向对象分析和设计在当代软件开发中的重要性,使用易懂的示例代码阐明了12个最常用的模式,使读者能够理解模式背后的基本原则和动机,理解为什么它们会这样运作。 本书适合软件开发专业人士,以及计算机专业、软件工程专业的高校师生阅读,也可作为面向对象分析与设计课程的参考教材。 内容推荐 本书以作者自身学习、使用模式和多年来为软件开发人员(包括面向对象技术老兵和新手)讲授模式的经验为基础撰写而成。首先概述了模式的基础知识,以及面向对象分析和设计在当代软件开发中的重要性,随后使用易懂的示例代码阐明了12个最常用的模式,包括它们的基础概念、优点、权衡取舍、实现技术以及需要避免的缺陷,使读者能够理解模式背后的基本原则和动机,理解为什么它们会这样运作。 本书适合软件开发专业人士,以及计算机专业、软件工程专业的高校师生阅读,也可作为面向对象分析与设计课程的参考教材。 目录 第一部分 面向对象软件开发简介 第1章 面向对象范型 3 1.1 概览 3 1.2 面向对象范型之前:功能分解 3 1.3 需求问题 5 1.4 应对变化:使用功能分解 6 1.5 应对需求变更 8 1.6 面向对象范型 11 1.7 面向对象程序设计实践 16 1.7 特殊对象方法 18 1.8 小结 19 复习题 20 简答题 20 阐述题 21 观点与应用题 21 第2章 UML 22 2.1 概览 22 2.2 什么是UML 22 2.3 为什么使用UML 23 2.4 类图 23 2.5 交互图 29 2.6 小结 31 复习题 31 简答题 31 阐述题 31 观点与应用题 31 第二部分 传统面向对象设计的局限 第3章 对代码灵活性要求很高的问题 35 3.1 概览 35 3.2 提取CAD/CAM系统的信息 35 3.3 了解专业术语 36 3.4 问题描述 37 3.5 挑战及其解决方案 39 3.6 小结 41 复习题 42 简答题 42 阐述题 42 观点与应用题 42 第4章 标准的面向对象解决方案 43 4.1 概览 43 4.2 作为特例来解决 43 4.3 小结 50 复习题 51 简答题 51 阐述题 51 观点与应用题 51 第三部分 设计模式 第5章 设计模式简介 55 5.1 概览 55 5.2 设计模式源自建筑学和人类学 55 5.3 从建筑模式到软件设计模式 59 5.4 为什么学习设计模式 60 5.5 学习设计模式的其他好处 64 5.6 小结 65 复习题 65 简答题 65 阐述题 66 观点与应用题 66 第6章 Facade模式 67 6.1 概览 67 6.2 Facade模式简介 67 6.3 学习Facade模式 67 6.4 实践注记:Facade模式 70 6.5 Facade模式与CAD/CAM问题的联系 71 6.6 小结 72 复习题 72 简答题 72 阐述题 72 观点与应用题 73 第7章 Adapter模式 74 7.1 概览 74 7.2 Adapter模式简介 74 7.3 学习Adapter模式 75 7.4 实践注记:Adapter模式 79 7.5 Adapter模式与CAD/CAM问题的联系 82 7.6 小结 82 复习题 82 简答题 82 阐述题 83 观点与应用题 83 第8章 开拓视野 84 8.1 概览 84 8.2 对象:传统看法与新看法 85 8.3 封装:传统看法与新看法 86 8.4 发现变化并将其封装 89 8.5 共性和可变性分析与抽象类 92 8.6 敏捷编程的品质 94 8.7 小结 97 复习题 98 简答题 98 阐述题 98 观点与应用题 99 第9章 Strategy模式 100 9.1 概览 100 9.2 处理新需求的一种途径 100 9.3 国际电子商务系统案例研究:最初的需求 102 9.4 处理新的需求 103 9.5 Strategy模式 110 9.6 实践注记:使用Strategy模式 112 9.7 小结 113 复习题 114 简答题 114 阐述题 114 观点与应用题 114 第10章 Bridge模式 115 10.1 概览 115 10.2 Bridge模式简介 115 10.3 学习Bridge模式:示例 116 10.4 对使用设计模式的观察 125 10.5 学习Bridge模式:通过将它推演出来 126 10.6 Bridge模式回顾 133 10.7 实践注记:使用Bridge模式 134 10.8 小结 137 复习题 139 简答题 139 阐述题 139 观点与应用题 139 第11章 Abstract Factory模式 140 11.1 概览 140 11.2 Abstract Factory模式简介 140 11.3 学习Abstract Factory模式:示例 140 11.4 学习Abstract Factory模式:实现该模式 146 11.5 实践注记:Abstract Factory模式 151 11.6 将Abstract Factory模式与CAD/CAM问题联系起来 153 11.7 小结 153 复习题 154 简答题 154 阐述题 154 观点与应用题 154 第四部分 组合起来:用模式思考 第12章 专家设计之道 157 12.1 概览 157 12.2 添加特征的创建方式 157 12.3 小结 163 复习题 163 简答题 163 阐述题 164 观点与应用题 164 第13章 用模式解决CAD/CAM问题 165 13.1 概览 165 13.2 对CAD/CAM问题的回顾 165 13.3 用模式思考 166 13.4 用模式思考:步骤1 167 13.5 用模式思考:步骤2a 168 13.6 用模式思考:步骤2b 172 13.7 用模式思考:步骤2c 175 13.8 用模式思考:重复步骤2a和2b(Facade模式) 176 13.9 用模式思考:重复步骤2a和2b(Adapter模式) 177 13.10 用模式思考:重复步骤2a和2b(Abstract Factory模式) 177 13.11 用模式思考:步骤3 178 13.12 与原解决方案的比较 178 13.13 小结 179 复习题 180 简答题 180 阐述题 180 观点与应用题 180 第五部分 迈向新的设计方式 第14章 设计模式的原则与策略 183 14.1 概览 183 14.2 开闭原则 184 14.3 从背景设计原则 184 14.4 封装变化原则 188 14.5 抽象类与接口 189 14.6 理性怀疑原则 190 14.7 小结 190 复习题 191 简答题 191 阐述题 191 观点与应用题 191 第15章 共性与可变性分析 192 15.1 概览 192 15.2 共性和可变性分析与应用程序设计 192 15.3 用CVA解决CAD/CAM问题 193 15.4 小结 197 复习题 197 简答题 197 阐述题 197 观点与应用题 198 第16章 分析矩阵 199 16.1 概览 199 16.2 现实世界:充满变化 199 16.3 国际电子商务系统案例研究:应对变化 200 16.4 实践注记 206 16.5 小结 209 复习题 209 简答题 209 阐述题 209 观点与应用题 209 第17章 Decorator模式 210 17.1 概览 210 17.2 更多细节 210 17.3 Decorator模式 212 17.4 将Decorator模式应用到我们的案例研究 213 17.5 另一个例子:输入/输出 216 17.6 实践注记:使用Decorator模式 218 17.7 Decorator模式的本质 219 17.8 小结 220 复习题 220 简答题 220 阐述题 220 观点与应用题 220 第六部分 其他重要模式 第18章 Observer模式 223 18.1 概览 223 18.2 模式的分类 223 18.3 国际电子商务案例的更多需求 224 18.4 Observer模式 225 18.5 将Observer模式应用到我们的案例研究 226 18.6 实践注记:使用Observer模式 230 18.7 小结 232 复习题 232 简答题 232 阐述题 233 观点与应用题 233 第19章 Template Method模式 234 19.1 概览 234 19.2 案例研究的更多需求 234 19.3 Template Method模式 235 19.4 将Template Method模式应用到我们的案例研究 235 19.5 使用Template Method模式减少冗余 236 19.6 实践注记:使用Template Method模式 241 19.7 小结 242 复习题 243 简答题 243 阐述题 243 第七部分 各种工厂模式 第20章 来自设计模式的教益:各种工厂模式 247 20.1 概览 247 20.2 工厂 247 20.3 再谈背景 248 20.4 工厂遵循我们的准则 250 20.5 限制变化的影响 251 20.6 对工厂的另一种思考方式 251 20.7 工厂的不同角色 252 20.8 实践注记 252 20.9 小结 253 复习题 253 简答题 253 阐述题 253 观点与应用题 253 第21章 Singleton模式和Double-CheckedLocking模式 254 21.1 概览 254 21.2 Singleton模式简介 254 21.3 将Singleton模式应用到我们的案例研究 255 21.4 一种变体:Double-Checked Locking模式 257 21.5 反思 260 21.6 实践注记:使用Singleton模式和 260 Double-Checked Locking模式 260 21.7 小结 261 复习题 261 简答题 261 阐述题 261 观点与应用题 261 第22章 Object Pool模式 262 22.1 概览 262 22.2 一个需要对对象进行管理的问题 262 22.3 Object Pool模式 268 22.4 观察:工厂的作用不仅是实例化 268 22.5 小结 270 复习题 270 简答题 270 阐述题 271 观点与应用题 271 第23章 Factory Method模式 272 23.1 概览 272 23.2 案例研究的更多需求 272 23.3 Factory Method模式 273 23.4 Factory Method模式与面向对象语言 273 23.5 实践注记:使用Factory Method模式 274 23.6 小结 275 复习题 276 简答题 276 阐述题 276 观点与应用题 276 第24章 工厂模式的总结 277 24.1 概览 277 24.2 软件开发过程中的步骤 277 24.3 工厂与极限编程实践殊途同归 278 24.4 系统的扩展性 278 第八部分 终点与起点 第25章 设计模式回顾:总结与新起点 283 25.1 概览 283 25.2 面向对象原则的总结 283 25.3 设计模式如何封装实现 284 25.4 共性和可变性分析与设计模式 284 25.5 按责任分解问题域 285 25.6 模式和从背景设计 286 25.7 模式内部的关联 286 25.8 设计模式与敏捷编程实践 288 25.9 实践注记 288 25.10 小结 288 复习题 289 简答题 289 阐述题 289 观点与应用题 289 第26章 参考书目 290 26.1 本书配套网站 290 26.2 推荐阅读 291 26.3 针对Java程序员的推荐读物 292 26.4 针对C++程序员的推荐读物 293 26.5 针对COBOL程序员的推荐读物 294 26.6 极限编程的推荐读物 294 26.7 程序设计的一般性推荐读物 294 26.8 个人推荐 295 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。