君当解意表
![](https://img9.doubanio.com/icon/u1378208-326.jpg)
此书的确成书较早,甚至完成于第一个C++标准勘定之前。买了放在书柜里面,也不知有多少年,随我辗转了多少地,今日才读完。前面的评论里有老师说,觉得书太老了后悔购买。我并不这么看。可能因为我水平较低的原因,觉得此书至少有几点是值得学习的:
一是程序库设计的智慧。中国的很多程序员,多是程序库的使用者,而非创造编写者。一方面是产业限制,整个软件行业平均还是处于的下游;另外是文化因素,相比于欧美同行,中国底层码农较为缺乏那种分享和奉献的精神,而领导也较少有那种比较长远的眼光。如何从无到有构建一个类体系,如何让自己的代码能方便地被他人使用,如何安全地和他人代码共存,如何顺利地在各种平台上运行,这些方面大部分人缺乏知识,也没有机会去动手实践。相比于《Effective C++》这种主要是编码技巧和准则上的指导,本书在这方面的内容不限制于C++本身,深邃且系统得多。
二是对于一些C++以外的概念的解释和讨论。比如前向兼容性,后向兼容性,链接兼容性,运行兼容性等等,虽然基本概念大家都可知大概,但是作者在此书中的鞭辟入里的分析和讨论还是值得一看的。不掌握这些周围的概念,对语言就无法得心应手地运行。拳法耍得再好,未知江湖规矩,终究是外行人。
三是非技术因素的讨论。比如前言中便谈到了可编写重用代码的最大障碍在于办公室政治和绩效考评制度,可谓一针见血。在如后面讲到的技术文档编写方法。读完均戚戚有感于心。
而本书值不足处,就是可能因为成书早,对于模板的应用设计讨论浮光掠影。其实就C++程序库设计而言,模板和类继承系统的选择,融合是关窍之一,作者并未在此处用说得明白。
总体上,本书的很多讨论和道理,是超越了C++语言本身,适合一般程序库开发的。至少以我的水平,从今天看,依然非常精当,和工作中的体会不谋而合。求新求快,是一般技术人员的选择,不能说错。但是我以为,即使在技术领域,老书未必不好,老书有不过时的准则,老书中也有新技术的渊源。只有了解领会以往的现实,当时的思路,演变的潮流,你才能更好的把握理解当前。技术如此,社会也如此。
一是程序库设计的智慧。中国的很多程序员,多是程序库的使用者,而非创造编写者。一方面是产业限制,整个软件行业平均还是处于的下游;另外是文化因素,相比于欧美同行,中国底层码农较为缺乏那种分享和奉献的精神,而领导也较少有那种比较长远的眼光。如何从无到有构建一个类体系,如何让自己的代码能方便地被他人使用,如何安全地和他人代码共存,如何顺利地在各种平台上运行,这些方面大部分人缺乏知识,也没有机会去动手实践。相比于《Effective C++》这种主要是编码技巧和准则上的指导,本书在这方面的内容不限制于C++本身,深邃且系统得多。
二是对于一些C++以外的概念的解释和讨论。比如前向兼容性,后向兼容性,链接兼容性,运行兼容性等等,虽然基本概念大家都可知大概,但是作者在此书中的鞭辟入里的分析和讨论还是值得一看的。不掌握这些周围的概念,对语言就无法得心应手地运行。拳法耍得再好,未知江湖规矩,终究是外行人。
三是非技术因素的讨论。比如前言中便谈到了可编写重用代码的最大障碍在于办公室政治和绩效考评制度,可谓一针见血。在如后面讲到的技术文档编写方法。读完均戚戚有感于心。
而本书值不足处,就是可能因为成书早,对于模板的应用设计讨论浮光掠影。其实就C++程序库设计而言,模板和类继承系统的选择,融合是关窍之一,作者并未在此处用说得明白。
总体上,本书的很多讨论和道理,是超越了C++语言本身,适合一般程序库开发的。至少以我的水平,从今天看,依然非常精当,和工作中的体会不谋而合。求新求快,是一般技术人员的选择,不能说错。但是我以为,即使在技术领域,老书未必不好,老书有不过时的准则,老书中也有新技术的渊源。只有了解领会以往的现实,当时的思路,演变的潮流,你才能更好的把握理解当前。技术如此,社会也如此。
有关键情节透露