☆☆☆☆☆
简体网页||
繁体网页
著者
出版者 出版社:博硕 订阅出版社新书快讯 新功能介绍
翻译者 译者: 葛子昂/译, 博硕文化, 陈锦辉/审校
出版日期 出版日期:2017/03/31
语言 语言:繁体中文
下载链接在页面底部
点击这里下载
~~~~~~~大师已逝,墨迹留香~~~~~~~
学习设计模式的人,一定听过《Design Patterns: Elements of Reusable Object-Oriented Software》这本书,俗称GoF的《设计模式》或GoF的23个设计模式。早期就开始学习设计模式的前辈也大多读过那本书。
GoF的设计模式只有23个吗?其实不只23个,在该书出版之时,有接近半打的模式未能被放入该书当中,原因有很多,例如在当年尚未取得两个以上的大型专案实例来验证可行性、尚未取得四人的共识、与其他模式之间的分界尚不明朗等等,都可能会导致一些模式未被纳入。
该书的遗珠之憾是那些模式呢?在本书中,作者(GoF的四位成员之一)补充了两个模式,其中的GENERATION GAP模式已经获得共识,只是在当年的实例不够多,但现在看来,实在是稀松平常,到处都可以看到开发环境或框架採用了这个模式。
至于另一个TYPED MESSAGE模式,在规划初期是叫做MULTICAST模式,这个模式初期只取得其中三人的同意。借着这个尚未取得共识的模式,作者揭露了当初在撰写《Design Patterns: Elements of Reusable Object-Oriented Software》时,四位作者之间对于模式的讨论方式,让读者得以一窥大师们的讨论、思想、以及对软体设计的习惯。并且在说服反对者的最后关头,还加入了另一位大师《Clean Code》作者Robert C. Martin(Bob大叔)的支援。如果您仔细阅读本书第四章及第五章,会发现原来要成为一个新模式真是不简单啊!那些面世的模式全都是大师们的心血结晶,无价的经验宝藏。
早期,有些人会批评《Design Patterns》不适合作为学习设计模式的第一本书,或许是因为有些人看的、写的专案不够多,所以无法体会其中的奥妙。后来,由于设计模式被大多数高级软体工程师接受了,因此写了非常多的相关书籍来介绍设计模式,渐渐地,设计模式不再那么令人敬畏,也成为了软体设计的显学。而这类比较容易理解的书籍,通常都是採用最适合初阶读者的写法,也就是举出实例来说明模式。而且举的例子越是程式设计师理解的例子,就越能使程式设计师学会设计模式并加以活用。
有些书籍,只针对每个模式举出一个例子,但无法找出一些好例子,可同时应用多个模式来完成同一个例子中不同的功能要求,这样的写作法,常常误导了读者,违背了设计模式的目的。换言之,一招半式是要如何走江湖呢?本书有别于那些书籍,在本书第二章中,作者以程式设计师最能理解的档案系统为例,实际示范如何应用六个模式来解决档案系统不同的功能需求,这六个模式之间的相互合作方式,让人眼睛为之一亮。赞叹道︰「原来设计模式是这样用的啊!」
许多读者都在期待《设计模式》的第二版,而第二版会是什么样子呢?这很难说(也可能不会有第二版了),但至少可以肯定的是,本书作者对于《设计模式》第二版所能做出的贡献,都已经写在这本书当中了。
本书赞誉 本书将帮你理解如何将《设计模式》──其实是任何关于设计模式的书籍──当作一本珍贵的指南,而不是一些累赘的规定。── 朗讯科技公司,贝尔实验室 James O. Coplien
这本技术书的文风非常吸引人,我从未读过这么精彩的技术书。John真的已经炉火纯青、游刃有余,他对技术主题的把握如此坚实、精准又引人入胜。── 西门子公司 Frank Buschmann
对于套用设计模式有点经验的程式设计师来说,遇到问题该採用这个模式还是那个模式,常常陷入难以抉择的问题,看起来这样也可以,那样也可以,如果您也曾有过如此的经历,那么您一定要好好看完这本书,相信对您会非常助益。
PS︰大学(甚或科大)不教设计模式,实在是令人难以理解?!── 博硕文化 总编辑 陈锦辉
大师已逝,墨迹留香── 网路留言