设计模式:可复用面向对象软件的基础(典藏版) [美]埃里克·伽玛(ErichGamma)pdf下载

设计模式:可复用面向对象软件的基础(典藏版) [美]埃里克·伽玛(ErichGamma)百度网盘pdf下载

作者:
简介:设计模式:可复用面向对象软件的基础(典藏版) [美]埃里克·伽玛(ErichGamma)
出版社:
出版时间:2019-05
pdf下载价格:10.00¥


预览


内容介绍

   图书基本信息
图书名称 设计模式:可复用面向对象软件的基础(典藏版)
作者 埃里克·伽玛(ErichGamma)等,李英军,
定价 79.00元
出版社 机械工业出版社
ISBN 9787111618331
出版日期 2019-05-01
字数
页码 290
版次 1
装帧 平装
开本 16开
商品重量 0.4Kg

   内容简介
本书结合设计实例从面向对象的设计中精选出23个设计模式, 总结了面向对象设计中有价值的经验, 并且用简洁可复用的形式表达出来。本书分类描述了一组设计良好、 表达清楚的软件设计模式, 这些模式在实用环境下特别有用。 本书适合大学计算机专业的学生、研究生及相关人员参考。

   作者简介
埃里克·伽玛(Erich Gamma) 在瑞士苏黎世大学获得计算机科学博士学位。他与Kent Beck合作开发了单元测试框架JUnit,并领导了Eclipse Java Development Tools项目。他还曾是IBM Rational Jazz项目的主要成员。2011年,Gamma以杰出工程师(Distinguished Engineer)的身份加入微软Visual Studio团队,领导微软位于瑞士苏黎世的实验室。 n
n
理查德·赫尔姆(Richard Helm) 在澳大利亚墨尔本大学获得计算机科学博士学位,曾在IBM T. J. Watson担任研究员,并在澳大利亚开创了IBM面向对象技术研究分部。 n
n
拉尔夫·约翰逊(Ralph Johnson) 在美国康奈尔大学获得计算机科学博士学位,伊利诺伊大学教授,在模式、重构等领域均有很高造诣。 n
n
约翰·威利斯迪斯(John Vlissides) 在美国斯坦福大学获得计算机科学博士学位,是IBM T. J. Watson研究中心的研究员。

   目录
出版者的话 n
赞誉 n
序言 n
前言 n
读者指南 n
章引言┊1 n
1.1 什么是设计模式┊3 n
1.2 Smalltalk MVC中的设计模式┊4 n
1.3 描述设计模式┊6 n
1.4 设计模式的编目┊7 n
1.5 组织编目┊8 n
1.6 设计模式怎样解决设计问题┊10 n
1.6.1 寻找合适的对象┊10 n
1.6.2 决定对象的粒度┊11 n
1.6.3 指定对象接口┊11 n
1.6.4 描述对象的实现┊12 n
1.6.5 运用复用机制┊15 n
1.6.6 关联运行时和编译时的结构┊18 n
1.6.7 设计应支持变化┊19 n
1.7 怎样选择设计模式┊22 n
1.8 怎样使用设计模式┊24 n
第2章实例研究:设计一个文档编辑器┊25 n
2.1 设计问题┊27 n
2.2 文档结构┊27 n
2.2.1 递归组合┊28 n
2.2.2 图元┊29 n
2.2.3 组合模式┊31 n
2.3 格式化┊31 n
2.3.1 封装格式化算法┊31 n
2.3.2 Compositor和Composition┊32 n
2.3.3 策略模式┊33 n
2.4 修饰用户界面┊34 n
2.4.1 透明围栏┊34 n
2.4.2 Monoglyph┊35 n
2.4.3 Decorator模式┊36 n
2.5 支持多种视感标准┊37 n
2.5.1 对象创建的抽象┊37 n
2.5.2 工厂类和产品类┊38 n
2.5.3 Abstract Factory 模式┊40 n
2.6 支持多种窗口系统┊40 n
2.6.1 是否可以使用Abstract Factory模式┊40 n
2.6.2 封装实现依赖关系┊41 n
2.6.3 Window和WindowImp┊43 n
2.6.4 Bridge模式┊46 n
2.7 用户操作┊46 n
2.7.1 封装一个请求┊47 n
2.7.2 Command类及其子类┊47 n
2.7.3 撤销和重做┊48 n
2.7.4 命令历史记录┊49 n
2.7.5 Command模式┊50 n
2.8 拼写检查和断字处理┊50 n
2.8.1 访问分散的信息┊51 n
2.8.2 封装访问和遍历┊51 n
2.8.3 Iterator类及其子类┊52 n
2.8.4 Iterator模式┊55 n
2.8.5 遍历和遍历过程中的动作┊55 n
2.8.6 封装分析┊56 n
2.8.7 Visitor类及其子类┊59 n
2.8.8 Visitor模式┊60 n
2.9 小结┊60 n
第3章创建型模式┊62 n
3.1 Abstract Factory(抽象工厂)—对象创建型模式┊66 n
3.2 Builder(生成器)—对象创建型模式┊74 n
3.3 Factory Method(工厂方法)—对象创建型模式┊81 n
3.4 Prototype(原型)—对象创建型模式┊89 n
3.5 Singleton(单件)—对象创建型模式┊96 n
3.6 创建型模式的讨论┊102 n
第4章结构型模式┊104 n
4.1 Adapter(适配器)—类对象结构型模式┊106 n
4.2 Bridge(桥接)—对象结构型模式┊115 n
4.3 Composite(组合)—对象结构型模式┊123 n
4.4 Decorator(装饰)—对象结构型模式┊132 n
4.5 Facade(外观)—对象结构型模式┊┊139 n
4.6 Flyweight(享元)—对象结构型模式┊146 n
4.7 Proxy(代理)—对象结构型模式┊155 n
4.8 结构型模式的讨论 ┊164 n
4.8.1 Adapter与Bridge┊164 n
4.8.2 Composite、Decorator与Proxy┊164 n
第5章行为型模式┊166 n
5.1 Chain of Responsibility(职责链)—对象行为型模式┊167 n
5.2 Command(命令)—对象行为型模式┊175 n
5.3 Interpreter(解释器)—类行为型模式┊183 n
5.4 Iterator(迭代器)—对象行为型模式┊193 n
5.5  Mediator(中介者)—对象行为型模式┊205 n
5.6 Memento(备忘录)—对象行为型模式┊212 n
5.7 Observer(观察者)—对象行为型模式┊219 n
5.8 State(状态)—对象行为型模式┊227 n
5.9 Strategy(策略)—对象行为型模式┊234 n
5.10 Template Method(模板方法)— 类行为型模式┊242 n
5.11 Visitor(访问者)—对象行为型 模式┊246 n
5.12 行为型模式的讨论┊256 n
5.12.1 封装变化┊256 n
5.12.2 对象作为参数┊257 n
5.12.3 通信应该被封装还是被分布┊257 n
5.12.4 对发送者和接收者解耦┊258 n
5.12.5 总结┊260 n
第6章结论┊261 n
6.1 设计模式将带来什么┊262 n
6.1.1 一套通用的设计词汇┊262 n
6.1.2 书写文档和学习的辅助手段┊263 n
6.1.3 现有方法的一种补充┊263 n
6.1.4 重构的目标┊264 n
6.2 本书简史┊265 n
6.3 模式界┊266 n
6.3.1 Alexander的模式语言┊266 n
6.3.2 软件中的模式┊267 n
6.4 邀请参与┊267 n
6.5 临别感想┊268 n
附录A词汇表┊269 n
附录B图示符号指南┊273 n
附录 C基本类┊277 n
参考文献┊284

   编辑推荐

   文摘

   序言