读一本好书,就仿佛和一位高尚的人谈话;
读一本好的技术书,就仿佛有个大神在手把手教你。
重剑无锋,大巧不工。优秀的技术书籍各具特色,但差劲的技术书籍总是惊人的相似,如《XX天XX技术从入门到精通》系列丛书。真正优秀的书籍,是不会靠书名来博取读者的眼球,因为它自信内容就足够吸引你。
选择一本靠谱的技术书进行阅读,是对自己的时间和金钱负责(其实钱不是问题,浪费时间读糟糕的技术书无异于自杀)。根据我多年购买技术书籍的经验,给出以下几点参考标准,希望能给你们带来帮助。
口碑
不得不说,任何东西的传播,口碑还是很靠谱。你的编程启蒙老师、你公司的技术老大、你的同事或技术社区推荐的书,基本上都很靠谱,不会坑你。你通过这个途径可以获取不少你可能没听过的书名的好书,因为大部分优秀的书籍,你可能早就听别人讲烂了(如《代码大全》)。
司徒正美写的《JavaScript框架设计》就是我同事强烈推荐给我看的,在此之前我还真没听过这人这书。还有技术社区里推荐的,比如系统性学习正则表达式,大家基本都会推荐你去看余晟老师翻译的《精通正则表达式》,讲解正则表达式的所有书籍中,就目前来看,无出其右。
经典
经典就是经过历史选择出来的“最有价值的书”。当你提到某个领域,总能有那么一两本书浮现在你的脑海,那这就是经典书籍。也许你读都没读过,但从你的师兄老师那充满敬意的表情中,你可以感受到这些书的分量。
提到编译原理,知情的人都会想起《编译原理》和《现代编译原理》,看名字也许会陌生,但我告诉你这是龙书和虎书,你就明白了,其实还有一本鲸书,一般人我不告诉他。提到软件工程,都会想起 Frederick Phillips Brooks 写的《人月神话》。提到代码重构,肯定少不了 Martin Fowler《重构 - 改善既有代码的设计》,他本人也是国际著名的面向对象分析设计、UML、模式等方面的专家,敏捷开发方法的创始人之一。
你会发现经典的书籍基本都是10年前写的,有的甚至是20多年前写的(比你的年龄还大),但它们阐述的道理在现在这个软件技术飞速发展的时代,依然十分奏效,这就是经典。
作者
你可以通过调查作者的知名度来评估某本书是否值得读,反过来,你也可以通过知名的程序员,来找到优秀的书籍进行学习。能称为世界级的软件开发大师人屈指可数,能够阅读他们写的书籍,比上任何培训班都值得。例如,Robert C. Martin(江湖人称“Uncle Bob”)写的《程序员的职业素养》和《代码整洁之道》(我都有读过,窃喜中),计算机先驱 Donald E. Knuth《计算机程序设计艺术》以及jQuery之父John Resig的《JavaScript忍者秘籍》等。
赞誉
给一本书写赞誉的人如果是某个领域的出名人物,那这本书肯定不是好书就是神书了。但是,一般这种情况下,作者本身肯定是非常牛逼的人物,不然请不动大神给自己写赞誉。比如,2016年4月出版的《CSS揭秘》,豆瓣评分目前9.3。作者 Lea Verou 本身是W3C CSS工作组七位特邀专家之一,给她写赞誉的人有,《CSS权威指南》(这也是本好书)联合作者 Estelle Weyl、OOCSS项目创始人Nicole Sullivan、《网站重构》(同是好书)的作者Jeffrey Zeldman 以及同是W3C CSS工作组的特邀专家 Elika J. Etemad 等人。
评分
国内的话,就豆瓣阅读的评分相对客观和靠谱。我要决定买一本书,肯定会去豆瓣看看这本书的评分和别人对它的评价。一般我选择的标准是:
- 9分以上:豆瓣能上9分的书,不管是什么书,基本都是神书。比如这本高达9.4的《哥德尔、艾舍尔、巴赫》神书,只能膜拜。
- 8~9分:处于这个阶段的书虽然称不上是神书,但绝对是好书,值得读。我文中推荐给大家的书,大部分都处于这个阶段,少数是9分以上。
- 7~8分:这个阶段的书不差不吭,可以读。
- 7分以下:别浪费你的金钱和时间了,你肯定能找到替代该书内容的好书
出版
有的时候,看书籍的出版社也能对技术书的质量窥探一二。
首先推荐的肯定是O'Reilly出版社,他们出版的动物书籍,全世界的程序员都知道,关键是质量还非常高。因为O'Reilly出版社的工作人员(作家、编辑等)全是程序员,很多在技术社区都十分活跃,这么一群人出版的书,能差吗?
其次就是Manning出版社,它闻名遐迩的书籍应该是《XXX in Action》系列的书,特点是每本书的封面都是穿着奇怪服装的人(还有就是书很厚啊!)。这个出版社也是专门出版技术书籍的,而且出版的技术书籍讲解都是非常深入的,深入到一般人都读不懂(毕竟高深的知识怎么能让普通的吃瓜群众随便弄懂呢)。如果你想要深入研究某个技术,买本对应的“in action”书籍深入学习,绝对受益匪浅。
最后推荐一个中文出版社,图灵社区出版的书籍,这也是个专门出版技术书籍的出版社,出版的很多书籍也是非常优秀的。而且图灵社区也有很多的技术专家在上面发表文章和博客,值得阅读和推荐。
声明一下,我推荐的是针对技术书籍(特别是编程领域)来说优秀的出版社。在其他领域肯定有对应优秀的出版社,无意抬高或贬低哪些出版社。
结语
如果有遗漏的地方,请告诉我。本文持续更新,欢迎收藏。
我推荐了这么多好书,这你不赶紧买几本学(装)习(逼)一下?