“这可能是我所读过的关于C++的最好的书,我为通过这本书所学到的大量C++知识而惊异,”Synesis Software公司的开发顾问Matthew Wilson如此评价着C++ Gotchas(由Pearson的Addison-Wesley出版)。
令人兴奋的是,中国青年出版社引进了该书版权,进行了严谨的本地化工作,出版了该书的中文版《C++程序设计陷阱》,为国内众多程序开发设计高手提供了冲开设计陷阱牢笼的机会。
当好友读完这本书后,他的意味深长让我着实吃了一惊:“不光是所有程序员该读,就连培训机构也该开设这门课程!”
于是我也静下心来仔细地研读一番,结果比我听到朋友的话更加吃惊。书中讨论的那些可能出现在所有C++代码中的基本错误,以及同样会出现在C++语法、预处理、内存治理、多态性、类设计和类继续关系设计中的各种复杂错误,竟是我平时根本就没有注重到的!对于自认为是一个不错的程序员的我来说,即使坐在敞开的窗前阅读,也丝毫不减汗颜。在开发过程中,估计这些错误陷阱曾令诸多的程序设计好手百结惆怅,甚至有时会进入到思考的“死循环”中不能自拔。
俗话说“无巧不成书”,正是作者通过对每一个错误和它所导致的错误结果将会结合错误发生的上下文的仔细讲解以及结合实例所给出的相应解决办法,解开了许多程序员尚未解开的而且一直被忽略着的“心结”。自然地,《C++程序设计陷阱》也这样成书了,也就为很多像我这样“自以为是”的程序员们所推崇着,也就有很多同行写着类似于我这篇看似吹嘘而实际上都发自内心真实感慨的“书评”。
其实是不是书评并不重要,要害是大家如何看待我的想法。
就像作者Stephen Dewhurst一改一贯的程序设计类图书的写作思想,而从错误中找到主题一样,提供给读者的只是各种C++习惯用法和设计模式、用于产生解决共性问题的定制方法,也就是说向读者展示了如何在布满各种危险的C++世界中自由航行、如何避免C++编程中碰到各种的普通的和复杂的陷阱、如何编写更轻易使用、更易维护的代码,以及各种高级C++编程技术。正如Addison-Wesley的编辑们所写的那样:“它能够避免和纠正在C++程序设计和编写过程中所碰到的95%的最常见的、最具破坏性和最有趣的错误。”
从书中的介绍来看,作者Stephen Dewhurst曾经是贝尔实验室中第一批C++使用者的一员,他具有将近20年的C++应用经验,曾经用C++解决了诸多领域中的问题,如编译器设计、证券安全交易、电子商务以及嵌入式通讯等领域。他还是《Programming in C++》的作者之一,是C/C++ User Journal杂志的编辑和C++ Report杂志的专栏作家。更为重要的是,他还是两个C++编译器的开发者。
书做到极至,可以令许多拥有它的人感到释怀,于是,我身边的同行朋友就把它当成一本指南,不是把玩,而是反复地阅读,仔细地回味……