设计模式 可复用面向对象软的基础 典藏版 计算机科学丛书埃里克伽玛 面向对象的设计 软设计模式 计算pdf下载

设计模式 可复用面向对象软的基础 典藏版 计算机科学丛书埃里克伽玛 面向对象的设计 软设计模式 计算百度网盘pdf下载

作者:
简介:设计模式 可复用面向对象软的基础 典藏版 计算机科学丛书埃里克伽玛 面向对象的设计 软设计模式 计算
出版社:
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

 商品基本信息,请以下列介绍为准
图书名称: 设计模式:可复用面向对象软件的基础(典藏版)
作者: [美] 埃里克·伽玛(Erich Gamma)等
定价: 79.00
ISBN号: 9787111618331
出版社: 机械工业出版社


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


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


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