设计模式沉思录

John M.Vlissides

出版时间

201004-12-31

ISBN

9787115224637

评分

★★★★★

标签

设计

书籍介绍
这并不是一本教你如何使用设计模式的工具书,而是一位资深实践者对模式的重新审视。作者身为GoF之一,没有急于把23个模式奉为教条,而是带着读者回到设计现场:他如何从具体问题的泥淖中提炼模式,又如何发现既有模式的局限与不足,再用Singleton、Visitor等例子演示模式的迭代与取舍。书中反复强调一个近乎反常识的观点——反思比实现更重要,盲目套用只会让人陷入墨守成规。它适合已经掌握设计模式基础、却困于“知其然不知其所以然”的开发者:读完你会学会根据手头问题调整模式,而非照搬书本。当然,它不适合零基础者,也谈不上系统完整,但那份“乱中求序”的思辨,正是同名经典之外的独特价值。
作者简介
John Vlissides(1961—2005) 设计模式四人帮之一,《设计模式》一书的作者。曾在斯坦福大学工作,自1991年起任IBM T. J. Watson研究中心的研究员。他还曾是《程序设计的模式语言》的编辑,Addison-Wesley“软件模式”丛书的顾问。因患脑瘤于2005年感恩节(11月24日)病故。为纪念他的贡献,ACM SIGPLAN特设立了John Vlissides奖。 葛子昂 现任微软中国研发集团服务器及开发工具事业部的软件开发主管,目前从事WF的相关开发,致力于为WF开发人员提供方便高效的开发工具。之前曾长期从事WCF产品的相关研发,具有丰富的开发经验。出版译作有《.NET设计规范(第2版)》、《Windows核心编程(第5版)》。
AI导读
核心看点
  • GoF成员深度解析模式背后的设计哲学与迭代过程
  • 揭示经典模式局限,提出Generation Gap等新思路
  • 强调根据实际问题调整模式,拒绝盲目套用教条
读者共识
  • 适合作为GoF《设计模式》的补充与进阶读物,非首选入门书
  • 作者水平极高,但内容精炼且带有个人笔记色彩,需耐心品味
  • 对模式局限性的探讨极具启发性,有助于打破思维定势
精彩摘录
  • "乱中求序是自然科学的主旋律。"
  • "局促不安只能使人无所作为。只要关注最基本的东西,其他东西会随之而来的。"
  • "GoF: Erich Gamma Richard Helm Ralph Johnson John Vlissides"
  • "要防止夸大其词的宣扬引发抵触情绪,最好的方法就是——少说多做。"
  • "Adapter让我们改变一个类的接口。 Bridge让我们改变一个类的实现。 Composite让我们改变对象的结构和组成。 Decorator让我们改变职责而无需派生子类。 Facade让我们改变一个子系统的接口。 Flyweight让我们改变对象的存储开销。 Proxy让我们改变如何访问一个对象以及改变对象的位置。"
  • "当我们需要对一个对象进行引用,但这个引用需要具备更多的功能或要比一个简单的指针更加复杂时,Proxy模式就适用。"
  • "我们迫切地希望能避免修改已有的代码(可以理解为“向已有的代码中添加bug”)。"
  • "使用重载的时候,子类必须覆盖所有的函数,否则C++中对虚拟重载函数的选择性覆盖会隐藏基类中的一个或多个操作。"
目录
第1章 介绍  1.1 对模式的十大误解  1.2 观察 第2章 运用模式进行设计  2.1 基础  2.2 孤儿、孤儿的收养以及代用品  2.3 “但是应该如何引入代用品呢?”  2.4 访问权限  2.5 关于 VISITOR的一些警告  2.6 单用户文件系统的保护  2.7 多用户文件系统的保护  2.8 小结 第3章 主体和变体  3.1 终止SINGLETON  3.2 OBSERVER的烦恼  3.3 重温VISITOR  3.4 GENERATION GAP  3.5 Type Laundering  3.6 感谢内存泄漏  3.7 推拉模型 第4章 爱的奉献 第5章 高效模式编写者的7个习惯  5.1 习惯1:经常反思  5.2 习惯2:坚持使用同一套结构  5.3 习惯3:尽早且频繁地涉及具体问题  5.4 习惯4:保持模式间的区别和互补性  5.5 习惯5:有效地呈现  5.6 习惯6:不懈地重复  5.7 习惯7:收集并吸取反馈  5.8 没有银弹 参考文献 索引
用户评论
原版很老,从前言看是98年的。翻译得很好很用心。 Generation Gap挺容易理解,估计用不上。 内存泄漏cursorImp:平时不用c++,这节看看而已 observer与multricast的关系,没看懂。
GoF之一写的。书很薄,但是配得上沉思2字。
相对《设计模式》的枯燥,这书跟有趣,谈论更深入
干得漂亮,John!
将导出设计模式的思路以及争议写的非常的清晰,这本书的写作角度非常不错,内存不多,但是要表达的意思基本表达清楚了。
@2012-05-13 00:50:59
98年的原著,10年国内出版。GoF大师不负盛名,第四章众大神的思辨尤为精彩。可惜C++的语法忘得差不多了,读起来样例代码真有点吃力。
这本书颇为奇特。或许跟领域的特殊性有关,有的内容似乎还没想透就写出来了;有的内容使用的例子不太恰当。好的方面,一是温故,温习了好多设计模式;二是知新,的确也有新的收获。若问是否推荐,不好回答。想读的话,需要耐心一点,自己分辨自己过滤。最5章一些“论道”的内容挺有启发,但终究属于形而上。
这本书是2012年买的断断续续读了三遍多了,分别是我刚了解设计模式研一,工作一年和工作三年,对设计的理解千差万别,打算之后再读一遍,适合不同时段的技术不断的认识自己和总结自己的思路。非常值得珍藏并读很多遍的书,。
求书
收藏