前两天,编辑发邮件过来,说《设计模式之禅》第二次重印了,台湾繁体版也准备上市了,心中不仅窃喜,但同时也隐隐有点不安。窃喜的原因很简单,这本书是在今年3月份第一次印刷,然后到7月份第一次重印,现在12月份第二次重印,——这事儿搁谁身上都乐不可支,嘿嘿嘿嘿!那为啥说窃喜呢,谦虚是中国人公认的美德,而我又是原原本本的中国人,谦虚自然要把它当回事了,心里是乐开了花,但面上还得说“木啥,就是总结了点经验,适应读者的口味”罢了。

为什么说不安呢,今年我又把《人月神话》(32周年中文纪念版,《The Mythical Man-Month》)读了一遍,这是我第二次完整的读它了,焦油坑了,人月了,银弹了,外科手术团队了等等,说的都很好,觉的很赞同,很欣赏作者,想想看这是30年前的书,现在还能引起这么多的共鸣,这可是技术书呀!30年哪,这要是搁在人身上,那是有代沟地,肯定有,但《人月神话》却没有(除了提到的内存转储、缩微胶片、ARPA网络、OS/360操作系统等等细节时才感觉它离我们实在是太远太远了)。我的不安也即出自这里,不知道若干年后,不说远的就说5年后吧,不知道还有没有人愿意翻翻我这本书,或者说它是不是已经流通到了垃圾收集站,以重量论价格了,——恩,这点还是比较欣慰的,《设计模式之禅》比较厚,纸张也不错,能卖个好价钱!

还有一点担心是不知道这本书到底对读者有没有帮助,更确切的说,有没有误导读者,我可不想被扣上“引读者误入歧途”的帽子,刚上市那会儿是天天去当当、互动、豆瓣和卓越上溜达,看评论,回答问题,然后发现自己的好评率一直居高不下,悬着的心落地了。现在好评率都在95%以上,至少有一大半的读者觉得这本书还成,简单、易懂,不乏幽默,让技术充满了“人”的味道,而不是冷冰冰的“True”或“False”。我很喜欢卡内基《人性的弱点》(《Dale Carnegie's Lifetime Plan for Success》)中的一句话“Merely stating a truth isn’t enough.The truth has to be made vivid,interesting,dramatic.You have to use showmanship”,很欣赏这句话,真理不仅仅是要表达出来,而且还要有技巧的表达出来,以便能够更吸引人,更动听,我经常也使用一些比喻和类比,前段时间同事问我,“为什么需要单元测试”,我就跟他说“你在说话的时候,为什么还要用耳朵听自己的声音,你自己大脑都知道自己说什么了,要耳朵听着干什么?完全没必要嘛!,那为什么呢?因为你希望你说出的话是真实的表达你思维的,没有歧义和错误,那就是要求出口的话即是无错的,那怎么做到呢?使用回馈机制,由你自己的耳朵来反馈到底有没有错,单元测试也是一样,就是起到无错编码的作用,用单元测试校验代码是否符合你的意图,确保代码无技术缺陷,——有业务歧义那就没招了,那不是单元测试的范畴。”通过这样的一个解释,我确信同事对单元测试有了自己的见解,也不会再追问如果进行单元测试了,——既然如此重要那就自行寻找如何做。我在《设计模式之禅》中大量使用了这种方式,23种设计模式就这么多,就这么多的素材,如何做到有声有色就看怎么编排故事了,怎么让读者觉得“这故事有意思,值得一看”这就足亦!从结果上看,这么多的读者欣赏《设计模式之禅》,也让我看到这种“讲故事”(准确的讲 是“讲技术故事”)方式很受欢迎嘛,套有偶像的一句话“我喜欢”,说这话的时候注意周星星的腔调哦!

这段时间在看有关批判性思维(Critical Thinking),其中在批判“我的更好”(mine is better)这种思想,我也觉得也是,《设计模式之禅》肯定不是“更好的”,至少GOF设计模式的鼻祖还在嘛,而且还有很多很好的关于设计模式的书,这里不做介绍,喜欢的话自己到baidu上google一下呗。

《设计模式之禅》第二次重印,窃喜相关推荐

  1. 《设计模式之禅》笔记序言(附源码链接)

    <设计模式之禅>笔记序言(附源码链接) GitHub链接 2021年9月初,我下定决心要从书本出发,建立自己的技术栈基础体系.在此过程中,从阅读的部分书籍的源代码导读中,我发现其中有迹可循 ...

  2. 读秦小波《设计模式之禅》 -- 工厂模式

    设计模式是一种非常有用的编程技巧,它对于代码的重构有些非常重要的作用,对于软件开发人员来说,需要理解并尝试着使用这些设计的方法. 个人感觉<设计模式之禅>这本书中讲解的非常具体,每个模式都 ...

  3. 《设计模式之禅》前言

    终于可以写前言了,这说明<设计模式之禅>已经基本完成,可以长嘘一口气了. 为什么写<设计模式之禅>      今年5月份,我在JavaEye上发了一个帖子,其中提到自己已经工作 ...

  4. 设计模式之禅【组合模式】

    真刀实枪之组合模式 从公司的人事架构谈起吧 公司的组织架构 从上图中可以分析出: 有分支的节点(树枝节点) 无分支的节点(叶子节点) 根节点(无父节点) 有了树状结构图,再看看类图长啥样吧! 这个类图 ...

  5. 设计模式之禅学习总结

    设计模式之禅学习总结 单一职责原则 SRP 里式替换原则 LSP 依赖倒置原则 DIP 接口隔离原则 迪米特法则LoD 开闭原则: 单例模式 单例模式的通用类图如下图 单例模式的优点 单例模式的缺点 ...

  6. 设计模式之禅-二《上卷》

    设计模式之禅<二 - 上卷> 23种设计模式完美演绎 一:单例模式 Ensure a class has only one instance, and provide a global p ...

  7. 设计模式之禅(读后感悟随笔)-单一职责原则

    一直以来,自己读过的技术类书籍也不少了,但是都犯了一个毛病就是没有很好的记录下来,有些东西可能并不是平日开发中时时刻刻用到的,随着时间的延长,学过的东西慢慢也就淡忘了,刚好最近有些时间,也正打算把&l ...

  8. 设计模式之禅《一》 大旗不挥,谁敢冲锋 ——6大设计原则

    设计模式之禅<一>大旗不挥,谁敢冲锋 --6大设计原则 <一> 六大原则 一:单一职责原则 1.单一职责原则最难划分的就是职责 2.有两个可以变化的原因放到了一个接口中,这就为 ...

  9. 《设计模式之禅》观后感-六大设计原则(一)

    通过大牛推荐,看了这本<设计模式之禅>书籍,个人将书里的一些重点罗列出来了,如有错误地方,麻烦各位大牛告知. <设计模式之禅>作者:秦小波 本书是设计模式领域公认的3本经典著作 ...

最新文章

  1. Java编程之前的复习和练习
  2. Ubuntu开机黑屏解决办法
  3. Netty 框架学习(二):Netty粘包和拆包
  4. Django框架(16.Django中的模型类管理器以及自定义管理器)
  5. Mac cnpm装包时提示Error: EACCES: permission denied解决办法
  6. 2017.4.07 js 中的function 实现的方式
  7. mongodb备份还原
  8. windows下获取IP和MAC地址
  9. springboot使用spring-data-jpa完成数据持久化
  10. javaweb基础 - Servlet
  11. arcgis desktop 10.1 license manager无法启动问题解决
  12. Linux内核基础设施
  13. go mysql stmt exec_Go语言操作MySQL
  14. 打印九九乘法表算法-java
  15. Java自学指南一、找一个开始并能坚持下去的理由
  16. MISFIT SHINE2评测相比一代的SHINE更加实用:也许是目前最好的智能手环
  17. 【技术】Leaflet 地图,惭愧惭愧
  18. 计算ndvi值需要的数据_利用TM计算NDVI问题
  19. 开独立网店需要哪些步骤
  20. win10/11下wsl2安装gpu版的pytorch(避坑指南)

热门文章

  1. SuperMap iClient3D for WebGL教程(Entity)- viewFrom偏移量属性
  2. Android把商品添加到购物车的动画效果(贝塞尔曲线)
  3. 电信无线路由猫的配置
  4. 户外徒步用什么耳机好?户外运动耳机推荐
  5. Vue实现计算商品总价简单案例
  6. 老板谈上4休3工作制1个月后效果:不建议新公司模仿
  7. 【Grub】常见命令
  8. CGI与FastCGI介绍
  9. android 显示附近蓝牙,Android 基础-搜索附近蓝牙
  10. SQL Serve Intersect(交集)