免费下载书籍地址:PDF下载地址
精美图片

设计模式:可复用面向对象软件的基础(典藏版)书籍详细信息
- ISBN:9787111618331
- 作者:暂无作者
- 出版社:暂无出版社
- 出版时间:2019-06
- 页数:290
- 价格:59.20
- 纸张:胶版纸
- 装帧:平装-胶订
- 开本:16开
- 语言:未知
- 丛书:暂无丛书
- TAG:暂无
- 豆瓣评分:暂无豆瓣评分
寄语:
本书是引导读者走出软件设计迷宫的指路明灯,凝聚了软件开发界几十年设计经验的结晶。
内容简介:
本书结合设计实例从面向对象的设计中精选出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和Composition┊32
2.3.3 策略模式┊33
2.4 修饰用户界面┊34
2.4.1 透明围栏┊34
2.4.2 Monoglyph┊35
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和WindowImp┊43
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与Bridge┊164
4.8.2 Composite、Decorator与Proxy┊164
第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研究中心的研究员。
出版社信息:
暂无出版社相关信息,正在全力查找中!
书籍摘录:
暂无相关书籍摘录,正在全力查找中!
在线阅读/听书/购买/PDF下载地址:
在线阅读地址:设计模式:可复用面向对象软件的基础(典藏版)在线阅读
在线听书地址:设计模式:可复用面向对象软件的基础(典藏版)在线收听
在线购买地址:设计模式:可复用面向对象软件的基础(典藏版)在线购买
原文赏析:
将系统分解成对象集合。因为要考虑许多因素:封装、粒度、依赖关系、灵活性、性能、演化、复用等等,它们都影响着系统的分解,并且这些因素通常还是互相冲突的。
类型(type) 是用来标识特定接口的一个名字。
动态绑定是指发送的请求直到运行时刻才受你的具体的实现的约束。
进一步讲,动态绑定允许你在运行时刻彼此替换有相同接口的对象。这种可替换性就称为多态(polymorphism),它是面向对象系统中的核心概念之一。
抽象类(abstract class)(与之对应的还有非抽象类称为具体类(concrete class)。)的主要目的是为它的子类定义公共接口。一个抽象类将把它的部分或全部操作的实现延迟到子类中,因此,一个抽象类不能被实例化。
子类能够改进和重新定义它们父类的操作。更具体地说,类能够重定义(override)父类定义的操作,重定义使得子类能接管父类对请求的处理操作。
其它内容:
前言
本书并不是一本介绍面向对象技术或设计的书,目前已有不少好书介绍面向对象技术或设计。本书假设你至少已经比较熟悉一种面向对象编程语言,并且有一定的面向对象设计经验。当我们提及“类型”和“多态”,或“接口”继承与“实现”继承的关系时,你应该对这些概念了然于胸,而不是迫不及待地翻阅手头的字典。
另外,这也不是一篇高级专题技术论文,而是一本关于设计模式的书,它描述了在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案。设计模式捕获了随时间进化与发展的问题的求解方法,因此它们并不是人们从一开始就采用的设计方案。它们反映了不为人知的重新设计和重新编码的成果,而这些都来自软件开发者为了设计出灵活、可复用的软件而长时间进行的艰苦努力。设计模式捕获了这些解决方案,并用简洁易用的方式表达出来。
设计模式并不要求使用独特的语言特性,也不采用那些足以使你的朋友或老板大吃一惊的神奇的编程技巧。所有的模式均可以用标准的面向对象语言实现,这也许有时会比特殊的解法多费一些功夫,但是为了增加软件的灵活性和可复用性,多做些工作是值得的。
一旦理解了设计模式并且有了一种“Aha!”(而不是“Huh?”)的应用经验和体验后,你将用一种非同寻常的方式思考面向对象设计。你将拥有一种深刻的洞察力,以帮助你设计出更加灵活的、模块化的、可复用的和易理解的软件—这也是你着迷于面向对象技术的原因,不是吗?
当然还有一些提示和鼓励:次阅读此书时你可能不会完全理解它,但不必着急,我们在起初编写这本书时也没有完全理解它们!请记住,这不是一本读完一遍就可以束之高阁的书。我们希望你在软件设计过程中反复参阅此书,以获取设计灵感。
我们并不认为这组设计模式是完整的和一成不变的,它只是我们目前对设计的思考的记录。因此我们欢迎广大读者的批评与指正,无论从书中采用的实例、参考,还是我们遗漏的已知应用,或应该包含的设计模式等方面。你可以通过Addison-Wesley写信给我们,或发送电子邮件到design-patterns@cs.uiuc.edu。你还可以发送邮件“send design pattern source”到design-patterns-source@cs.uiuc.edu获取书中的示例代码部分的源代码。
另外我们有一个专门的网页报道的消息与更新:
http://st-www.cs.uiuc.edu/users/patterns/DPBook/DPBook.html
E. G. 于加州Mountain View
R. H. 于蒙特利尔
R. J. 于伊利诺伊Urbana
J. V. 于纽约 Hawthorne
1994年8月
书籍介绍
本书结合设计实例从面向对象的设计中精选出23个设计模式, 总结了面向对象设计中*有价值的经验, 并且用简洁可复用的形式表达出来。本书分类描述了一组设计良好、 表达清楚的软件设计模式, 这些模式在实用环境下特别有用。 本书适合大学计算机专业的学生、研究生及相关人员参考。
书籍真实打分
故事情节:7分
人物塑造:6分
主题深度:7分
文字风格:3分
语言运用:9分
文笔流畅:6分
思想传递:8分
知识深度:4分
知识广度:6分
实用性:5分
章节划分:7分
结构布局:3分
新颖与独特:5分
情感共鸣:5分
引人入胜:7分
现实相关:8分
沉浸感:8分
事实准确性:6分
文化贡献:5分
网站评分
书籍多样性:7分
书籍信息完全性:5分
网站更新速度:4分
使用便利性:9分
书籍清晰度:8分
书籍格式兼容性:3分
是否包含广告:7分
加载速度:7分
安全性:6分
稳定性:9分
搜索功能:3分
下载便捷性:7分
下载点评
- 差评(344+)
- 四星好评(350+)
- 好评多(610+)
- 值得购买(348+)
- 引人入胜(680+)
- 全格式(401+)
- 二星好评(533+)
- 目录完整(508+)
下载评价
网友 谢***灵:推荐,啥格式都有
网友 国***芳:五星好评
网友 利***巧:差评。这个是收费的
网友 扈***洁:还不错啊,挺好
网友 郗***兰:网站体验不错
网友 寿***芳:可以在线转化哦
网友 訾***晴:挺好的,书籍丰富
网友 宫***玉:我说完了。
网友 屠***好:还行吧。
网友 田***珊:可以就是有些书搜不到
网友 权***颜:下载地址、格式选择、下载方式都还挺多的
网友 宫***凡:一般般,只能说收费的比免费的强不少。