描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787508353937
请关注Head First系列其他新书
★本书免费赠送中文版学习伴侣。
★荣获2005年第十五届Jolt通用类图书震撼大奖。
★本书英文影印版被《程序员》等机构评选为2006年受读者喜爱的十大IT图书之一 。
★案例和程序虽然用Java编写,但所介绍的内容对于任何OO语言的用户都适用,包括C 和C#。
★信耶稣的人都要读圣经,信OO的人都要读四人组的《设计模式》,而《设计模式》的原创者Erich Gamma欣然推荐《Head First 设计模式》。
★如果你想开发软件却还没学过Java,Head First是不二的选择。
本书作者全都是“变态”!
当然,是好的那种“变态”!
把这么枯燥的主题写得那么生动有趣而学习效果又好,不是“变态”的作者还真做不到。
本书趋近完美,因为它在提供专业知识的同时,仍然具有相当高的可读性。
本书共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本全部23个设计模式。
★前言介绍了这本书的用法
★第1章至第11章陆续介绍了设计模式:Strategy、Observer、Decorator、Abstract Factory、Factory Method、Singleton、Command、Adapter、Facade、TemplatMethod、Iterator、Composite、State、Proxy。
★第12章介绍了如何将两个以上的设计模式结合起来成为新的设计模式(例如,著名的MVC模式),作者称其为复合设计模式。
★第13章介绍了如何进一步学习设计模式,如何发掘新的设计模式等主题。
★附录A介绍了剩下的设计模式:Bridge(桥接)、Builder(生成器)、Chainof Responsibility(责任链)、Flyweight(蝇量)、Interpreter(解释器)、Mediator(中介者)、Memento(备忘录)、Prototype(原型)、Visitor(访问者)。
另外,第1章至第9章还穿插介绍了四个OO基本概念(抽象、封装、继承、多态),以及九个OO原则(Principle)。千万不要轻视这些OO原则,因为每个设计模式背后都包含了几个OO原则的概念。很多时候,在设计出现两难情况时我们必须回归到OO原则,以方便判断取舍。
可以这么说:OO原则是我们的目标,而设计模式是我们的做法!
引子
谁适合读这本书?
我们知道你的大脑在想什么
元认知
让你的大脑就范
技术审校
致谢
1 欢迎来到设计模式世界:设计模式入门
模拟鸭子应用
Joe想到继承
利用接口如何?
软件开发的不变真理
分开变化和不变部分
设计鸭子的行为
测试鸭子的代码
动态地设置行为
封装行为的大局观
“有一个”比“是一个”更好
策略模式
共享模式词汇的威力
我如何使用设计模式?
设计箱内的工具
习题解答
2 让你的对象知悉现况
气象观测站
认识观察者模式
出版者+订阅者=观罕者模式
五分钟短剧:观察主题
定义观察者模式
松耦合的威力
设计气象站
实现气象站
使用Java内建的观察者模式
java.util.Observable的黑暗面
设计箱内的工具
习题解答
……
3 装饰者模式:装饰对象
4 工厂模式:烘烤OO的精华
5 单件模式:独一无二的对象
6 命令模式:封装调用
7 适配器模式与外观模式:随遇而安
8 模板方法模式:封装算法
9 送代器与组合模式:管理良好的集合
10 状态模式:事物的状态
11 代理模式:控制对象访问
12 复合模式:模式中的模式
13 与设计模式相处:真实世界中的模式
A 附录A:剩下的模式
对《Head First设计模式》的赞誉
“本书趋近完美,因为它在提供专业知识的同时,仍然具有相当高的可读性。内容权威,阅读轻松。”
——David Gelernter ,耶鲁大学计算机科学系教授
“我昨天收到这本书,在回家的路上就开始读……我简直欲罢不能。于是把书带到健身房,一边运动,一边读。这真是太酷了!不但有趣,涵盖面广,而且切中要点。本书让我感到印象深刻。”
——Erich Gamma,IBM杰出工程师 《Design Patterns》作者之一
“本书集乐趣、洞察力、技术深度以及实用于一身,是一本寓教于乐的好书。不管是初次学习设计模式,还是经验丰富的老手,都可以从参观对象村的过程中学到东西”
——Erich Gamma,IBM杰出工程师 《Design Patterns》作者之一
“到处都在用Java技术,移动电话、汽车、照相机、打印机、游戏、PDA、ATM、智能卡、体育馆、医疗设备、Web摄像机、服务器等,无不有Java的身影。如果你想开发软件却还没学过Java,Head First是不二的选择。”
——Erich Gamma,IBM杰出工程师 《Design Patterns》作者之一
kkkkffff20… –
这么贵的一本书,买了后悔! 翻译水平不算差,但都是一句一句翻译的,这样又有什么用?就好像一个纯正的西洋人,你把他的外表翻译成(整形)中国人,甚至连脸蛋鼻子也整成中式的,但结果呢?结果是这个人内心、思维、行为举止还是西式的,他骨子里还是个洋人,你让中国百姓和他沟通,容易吗? 我怀疑译者根本不具备良好的相关专业知识,完全照着原句翻译,这种用中文来描述,却要求读者用英文的思维习惯来理解内容,读下去我都快睡着了。。。建议直接阅读英文原版,因为对比过才发现,西方语言的表达… 展开评论
这么贵的一本书,买了后悔! 翻译水平不算差,但都是一句一句翻译的,这样又有什么用?就好像一个纯正的西洋人,你把他的外表翻译成(整形)中国人,甚至连脸蛋鼻子也整成中式的,但结果呢?结果是这个人内心、思维、行为举止还是西式的,他骨子里还是个洋人,你让中国百姓和他沟通,容易吗? 我怀疑译者根本不具备良好的相关专业知识,完全照着原句翻译,这种用中文来描述,却要求读者用英文的思维习惯来理解内容,读下去我都快睡着了。。。建议直接阅读英文原版,因为对比过才发现,西方语言的表达习惯和描述技巧往往能很好地表现他们的思想,但直接翻译成中文时却达不到这个效果,除非翻译者能真正理解他们的原意并能用同样好的中文水平表达出来,毕竟这样的翻译。。。。太少见了!
玄玉子 –
你不想重新发明车轮(或者更差的是,没有充气车胎的轮子),所以你从设计模式中寻求帮助——设计模式是过去人们面对同样的软件设计问题所得到的经验。 有了设计模式,就可以利用其他人的实践经验的精华,因此省下的时间可以用在其他的事情上,如:更有挑战性的事情、更复杂的事情以及更有趣的事情。你想要学习: ·重要的模式 ·何时使用某个模式,为何使用该模式 ·如何在你自己的设计中马上采用这些模式 ·何时不该使用该模式(如何避免滥用模式) &… 展开评论
你不想重新发明车轮(或者更差的是,没有充气车胎的轮子),所以你从设计模式中寻求帮助——设计模式是过去人们面对同样的软件设计问题所得到的经验。 有了设计模式,就可以利用其他人的实践经验的精华,因此省下的时间可以用在其他的事情上,如:更有挑战性的事情、更复杂的事情以及更有趣的事情。你想要学习: ·重要的模式 ·何时使用某个模式,为何使用该模式 ·如何在你自己的设计中马上采用这些模式 ·何时不该使用该模式(如何避免滥用模式) ·某个模式是依据哪些面向对象设计原理而设计出来的 更重要的是,你想在学习设计模式的过程中,不感觉到昏昏欲睡。如果你曾经读过任何一本深入浅出(Head First)系列书籍,你就会知道能够从本书中得到的是:透过丰富的视觉效果让你的大脑充分地运作。本书的编写运用许多最新的研究,包括神经生物学、认知科学以及学习理论,这使得这本书能够将这些设计模式深深地烙印在你的脑海中,不容易被遗忘。你将会更擅长于解决软件设计中的问题,并能够和你的团队成员用模式的语言来更好地沟通