07年,一本独具特色的IT技术图书《大话设计模式》横空出世,开创了一种新派技术图书风格。当年以及后来的数年间,横扫各大排行,目前销售已经超过5万册,鉴于这本书调侃的讲述风格,这本书不大可能被用做教材,这5万册几乎是实实在在的店销销量,在最近10年来,这是个了不起的数据了。
作者程杰并没有满足这个成绩,耗时3年潜心创作了另外一本同样是程序员基础的著作——《大话数据结构》。
这本书,说实话,作为策划,我并没有过多干预作者的创作过程,仅仅是在细节上提出我的一些看法。我干的工作更多的是与作者来回推敲成稿后的一些说法或者技术点上的问题,另外还反复探讨了用于类比的案例的可理解性。
这本书是我从业十年来遇到的最独特的一本书,下的功夫也非常多。记得最终的细节敲定还是在上海一家咖啡馆里完成的,我和作者在那里折腾了一下午,终于达成共识。
数据结构本质上和设计模式类似,不同的是,设计模式是近几十年的卓越的程序员的智慧结晶,而数据结构是几百上千年的无数科学家、数学家的智慧沉淀,更加具有深厚的背景。
大家知道,程序设计是利用计算机高速运算能力来协助我们处理一些需要运算得出结果的问题,无论是应用程序花哨的界面还是有效的用户体验,归根到底都是需要在后台你看不见的地方进行运算,得出我们需要的结果——无论是在气象预报还是“极品飞车”。
计算机的CPU是固定的,只会机械的接受程序的指令,所以,算法的优劣就决定了程序设计水平的高低。
在国外,优秀的程序员很多毕业于数学专业,也在一定程度上说明了这个问题。国内的程序开发现状跟国外略有不同,大家都在关注界面,关注用户体验,在算法上往往因为要求不高而实现的水平也不高。这其实是国内软件行业与国外软件行业的最大差距所在。
我们的程序员因为在受教育的过程中(大都是在大学),由于种种原因,数据结构和算法的基本功通常要差一些,等从业以后想再补课也比较缺乏好的教材,或者说适合自学的教材。
数据结构不是说没有优秀教材,比如《数据结构》《算法导论》这样的经典著作我们绝对不能说不好,但是作为自学,实在是有点难啃。
《大话数据结构》延续了作者一贯的轻松调侃的风格,采用了师生对话的方式,展开了热烈讨论,其中穿插了大量十分“庸俗”的类比案例,帮助大家迅速“开窍”。
我在我的一篇博文(http://kobeluan.blog.51cto.com/237742/212175)中谈到国内原创技术书整体层次偏低,不是因为国内没有高手,最关键的原因有两条:第一,国内版税太低,与高手作者的收入差别太大,导致很多人没有时间和心气来写书;第二,国内知识产权保护力度太差,出版社无法用提高定价的方式来为读者和作者提供更好的服务。
类似程杰这样的作者,凤毛麟角,真诚的将自己的感悟奉献出来,与作者的用心相比,作为策划编辑付出的劳动就不值得一提了。
这里真心希望读者可以从书中找到需要的东西,也希望国内更多的高人涌现出来,为大家创作更适合中国人阅读的优秀技术图书。