微信号:imkuqin

介绍:本微信公众号:imkuqin,为程序员提供最新最全的编程学习资料的查询.目前已经开通PHP、C/C++函数库、.NET Framework类库、J2SE API查询功能.

最常被程序员们谎称读过的计算机书籍

2018-05-13 21:00 程序猿

程序员书库(ID:OpenSourceTop) 编译

链接:http://www.billthelizard.com/2008/12/books-programmers-dont-really-read.html


马克·吐温曾经说过,所谓经典小说,就是指很多人希望读过,但很少人真正花时间去读的小说。这种说法同样适用于“经典”的计算机书籍。


像Stack Overflow这类的论坛上,经常会有“程序员最该读的计算机书籍有哪些”这样的问题出现,有那么几本书,一定会出现在名单中的前几名,所以,以下这些书你确实有必要去阅读以下


程序员最该读的计算机书籍


1、代码大全(Code Complete)——两届Software Jolt Award震撼大奖得主!

2、程序员修炼之道(The Pragmatic Programmer)

3、C程序设计语言( C Programming Language)(第2版)

4、重构:改善既有代码的设计(Refactoring: Improving the Design of Existing Code)

5、人月神话(The Mythical Man-Month)

6、编码——隐匿在计算机软硬件背后的语言(Code: The Hidden Language of Computer Hardware and Software)

7、Head First 设计模式(Head First Design Patterns)

8、编程珠玑(Programming Pearls)

9、Effective Java中文版(Effective Java (2nd Edition))or Effective C++(第三版)中文版

10、测试驱动开发(Test Driven Development: By Example)


也可点击《Stack Overflow上最受推荐的程序员书籍》查阅以上书籍详情。


上面这些书,我自己已经都读过了,相信就算不是很优秀的程序员也读过这些书。这里我就不一一评论这些书了,这些书在其领域里都可以堪称是神书,很多想要提升自己的程序员都会选择阅读这些书是有原因的


在人们备受推崇的计算机书籍中,还有一类书受到了独特的待遇。我称这些书为“最常被程序员们谎称读过的计算机书籍”。这并不代表说推荐这些书的人都没读过他们,而是很多人可能声称自己读过这些书,但事实上并没有。



最常被程序员们谎称读过的计算机书籍


1、算法导论



这本书的书名是我人为史上最具误导性的,它被许多大学广泛使用,通常被用于研究生水平的算法课程,事实上只要在大学里上过计算机课程的学生几乎都有一本这样的书。然而,除非你拥有计算机专业的硕士学位(并且是专门的算法领域的),否则的话,我觉得你顶多就只读了前面几章而已


由于标题的原因,英文“introduction”容易让人误解这是一本极为适合给初学者读的书,但事实并非如此,这本书对算法做尽可能详尽综合的介绍,就像其它一些随处可见的类似的书一样。



2 、编译原理



编译原理也叫龙书,它涵盖了编译器设计方面的所有知识,包括包括词法分析、语法分析、并行性检测、代码优化技术以及其他更高级的主题,不过不要把它推荐给只需要分析简单的包含数学公式或HTML字符串的程序员,只有你真的需要实现一个可用的编译器,否则根本运用不到这本书的所有内容,如果你把它推荐给一个只有简单文本解析能力的人,那么证明你压根自己也没读过它。



3、计算机程序设计艺术



我经常听到TAOCP将其描述为“每个程序员都应该阅读的”编程书籍系列。我觉得这是错误的,在我看来它是一本万能的参考书,如果你仔细通读这本书,可能你要花上几年时间还没读完,但是把它放在触手可及你的书架上确实是个不错的选择。


每当我碰到难题的时候,我也是先从其他书籍里找答案,走投无路了才选择TAOCP,因为十分复杂难懂,很理论,里面的示例也都是汇编语言,但是可观来讲,如果你在TAOCP上没有找到解决方案,那么基本可以认为这个问题基本无解,因为这本书涵盖的主题(内容)确实是十分全面。



4、设计模式:可复用面向对象软件的基础



这本书是唯一一本在这个清单里我从头到尾读过的书,读完之后,我发现不知道应该把它归到哪一类,这本书的问题在于书中的内容你都可以在其他书上看到过,这使得初学者很容易在维基百科上读过几篇设计模式的文章后,就在面试中宣称自己已经读过这本书了。


假如有更多的人花时间读这本书,那就不会出现这么多人试图将17种设计模式都塞到同一个日志框架里,这本书最好的部分是每一章节的内容都会解释什么时候适合使用什么模式,许多设计模式相关的书籍都做不到这一点。



5、C++程序设计语言



这本书与其说它是编程教材不如说它是本语言参考书,很多迹象都表明许多人都已经读过这本书了,因为除了它,剩下的没有太多的C++编译器可供选择的了


但是,开始希望学习C ++的程序员(甚至是其他语言的专家)不应该推荐他读C ++程序设计语言。而应该阅读C ++ Primer。


这篇文章的目的是想告诉如果你自己没读过这些计算机书籍,最好不要盲目的推荐给其他人,这样做的话很有可能误人子弟。相反的阅历丰富的人可能能更好的推荐一些书(如针对特定的领域,更多的面向特定的编程语言或针对不同编程技能水平去推荐)



●编号3071,输入编号直达本文

●输入m获取到文章目录

 
程序猿 更多文章 如何假装成一名好程序员? 华为薪资垫底,腾讯被逆袭,百度不如搜狗...2018互联网公司平均薪资Top10 乖乖,Google把人造出来了!! 23岁IT男与女友分手,扔下200万元分手费走了 是否人人都能学机器学习?入门的前提是什么?
猜您喜欢 【腾云计划】互联网秩序该如何建立? 【675】大型网站技术架构的演进 面向未来Web组件开发你首先要知道什么 【大考】小米的五年之痛,七年之痒 SSD、闪存采购批发平台首月交易额惊人!