设计模式(DesignPattern)非常重要,我不需要多说。

看,程序员几乎每人一本四人组。

(ErichGamma、RichardHelm、RalphJolhnson、JohnVlissides)设计模式。

打个比喻:相信耶稣的人都要读圣经,相信0O的人都要读四人组的《设计模式》、这是O0的圣经。

更有意思的是,有些人不仅买了这本书的原著,还买了它的光盘版和中文翻译的收藏,可见这是一本多么重要的书。

我查询了这本书的销量,它的畅销程度令人惊叹。

很多人反映四人组的《设计模式》不容易读。

对于不容易读的书,有些已经意识到的人会写白话或者注释版来获得进步。

所以圣经和佛经都有注释版,用更白的方式解释真相,我觉得《HeadFirst设计模式》也是为了满足这样的需求而产生的,可以算是白话版,搞笑版.漫画版的《设计模式》。

与《设计模式》相比,《HeadFirst设计模式》更容易阅读,内容也相当有趣。

相信我,写这样一本书绝对比写一本严肃的书难多了,可见作者煞费苦心。

作者的用心带来了前所未有的成功。

《HeadFirst设计模式》得到了读者的积极回应,甚至《设计模式》的原创者ErichGamma也为《HeadFirst设计模式》写了一篇推荐文章,以“保证”。


本书大纲

本书共有14章,每章都介绍了几个设计模式,完整地涵盖了四人组版本全部23个设计模式。

前言先介绍这本书的用法:第1章到第11章陆线介绍的设计模式为Strategy.Observer、Decorator,Abstract Factory、

Factory Method、Singleton、Command、Adapter、Facade、TemplateMethod、Iterator,Composite,State,Proxy。

最后三章比较特别。第12章介绍如何将两个以上的设计模式结合起来成为新的设计模式(例如著名的MVC模式)。

作者称其为复合设计模式(这是作者自创的名称,并非四人组的标准名词),第13章介绍如何进一步学习设计模式,

如何发觉新的设计模式等主题,至于第14章则很快地浏览尚未介绍的设计模式,

包括Bridge、Builder,Chain of Responsibility.Flyweight、Interpreter、Mediator,Mernento、Prototype,Visitor。

第1章还介绍了四个OO基本概念(抽象、封装、继承、多态),而第1章到第9幸也陆续介绍了九个OO原则(Principle)。

千万不要轻视这些O0原则,因为每个设计模式背后都包含了几个O0原则的概念。很多时候,在设计时有两难的情况,

这时候我们必须回归到OO原则,以方便判断取舍。可以这么说:OO原则是我们的目标,而设计模式是我们的做法。


本书特色

强大的写作阵容。本书作者Eric Freeman和Elisabeth Freeman是作家、讲师和技术顾问。

Eric拥有耶鲁大学的计算机科学博士学位,Elisabath拥有耶鲁大学的计算机科学硕士学位。

Kathy Sierra (javaranch.com的创始人)和Bert Bates是畅销的HeadFirst系列书籍的创立者,也是Sun公司Java开发员认证考试的开发者。

本书的产品设计应用神经生物学、认知科学,以及学习理论,这使得这本书能够将这些知识深深地印在你的脑海里,不容易被遗忘。

本书的编写方式采用引导式教学,不直接告诉你该怎么做,而是利用故事当作引子,带领读者思考并想办法解决问题。

解决问题的过程中又会产生一些新的问题,再继续思考、继续解决问题,这样可以加深体会。

作者以大量的生活化故事当背景,例如第I章是鸭子,第2章是气象站,第3章是咖啡店,书中搭配大量的插图(几乎每一页都有图),

所以阅读起来生动有趣,不会感觉到昏昏欲睡。作者还利用歪歪斜斜的手写字体,增加“现场感”。

精心设计许多爆笑的对白,让学习过程不会太枯燥。还有模式告白节目,将设计模式拟人化成节目来宾,畅谈其内在的一切。

本书大量采用UML的Class Diagram (Static Structure Diagram)。书中的例子程序虽然都是用Java编写,

但是本书所介绍的内容对于任何O0语言的用户都适用,包括C++和C4。每一章都有数目不等的测验题。每章最后有一页要点整理,这也是精华所在,我都是利用这一页做复习。

我认为,这本书的作者全都是“变态”!唔,我是说,好的那种“变态”。毕竟要把这么枯燥的主题写得这么有趣而学习效果又好,不是“变态”的作者还真是做不到呢!



下面是《HeadFirst设计模式》教材目录部分展示:


1欢迎来到设计模式世界:设计模式入门模拟鸭子应用

Joe想到继承利用接口如何?

软件开发的不变真理

分开变化和不变部分

设计鸭子的行为

测试鸭子的代码

动态地设置行为

封装行为的大局观

“有一个"比"是一个"更好

策略模式

共享模式词汇的威力

我如何使用设计模式?

设计箱内的工具

习题解答


2让你的对象知悉现况

气象观测站

认识观察者模式

出版者+订阅者=观罕者模式

五分钟短剧:观察主题

定义观察者模式

松耦合的威力

设计气象站

实现气象站

使用Java内建的观察者模式

java.util.Observable的黑暗面

设计箱内的工具


3装饰对象

欢迎来到星巴兹咖啡

开放一关闭原则

认识装饰者模式

以装饰者构造饮料订单

定义装f者模式

装饰饮料

写下星巴兹的代码

真实世界的装饰者:Java LO

编写自己的Java L/O装饰者

设计箱内的工具

习题解答


4.烘烤00的精华

当看到“new”,就会想到“具体“

对象村比萨

封装创建对象的代码

建立一个简单比萨工厂

定义简单工厂

给比萨店使用的框架

允许子类做决定

让我们开一家比萨店吧

声明一个工厂方法

认识工厂方法模式

平行的类层级

定义工厂方法模式

一个很依赖的比萨店

看看对象依赖

依赖倒置原则

再回到比萨店

原料家族

建造原料工

厂看看抽象工厂

幕后花絮

定义抽象工厂模式

比较工厂方法和抽象工厂

设计箱内的工具

习题解答




教材内容部分展示:


HeadFirst设计模式pdf电子版书籍在线下载(程序员几乎人手一本)

HeadFirst设计模式pdf电子版书籍在线下载(程序员几乎人手一本)下载地址
HeadFirst设计模式
百度网盘 / 课程大小:0.00字节
提取码:**** (购买后可见)
下载
评论下
  • 顺带评个分
提交
返回顶部