计算机经典必读书籍系列一

曾巧文 发布于:2012-11-26 23:14 分类:学习笔记 标签: 书籍

计算机经典必读书籍系列一



PART 1. 推荐经典书籍(内容不全,以后慢慢补充)

C程序设计语言(第2版新版):(读完之后请做后面的练习进行巩固)
  • 作  者:(美)克尼汉,(美)里奇 著 徐宝文李志 译
  • 丛 书 名:计算机科学丛书
  • 出 版 社:机械工业出版社
  • ISBN:9787111128069
  • 出版时间:2004-01-01
  • 版  次:1
  • 页  数:258
  • 装  帧:平装
评价:《C程序设计语言》(第2版新版)是由C语言的设计者BrianW.Kernighan和DennisM.Ritchie编写的一部介绍标准C语言及其程序设计方法的权威性经典著作。书很利索,该有的都有,如果你还没有一本满意的C语言课本,买它没错。看看作者你就知道这本书有么值得一读


《C和指针》
POINTERS ON C Kenneth A.Reek、
徐波 人民邮电出版社

评价:不算厚的书,纠正对指针的错误理解,这是必读经典,相信会带给你很多思考。(单单一本还不够,继续往后看)


《C陷阱与缺陷》
Andrew Koenig、 高巍  
人民邮电出版社

评价:172页,应当1-2天看完,读完豁然开朗,对C语言常见的陷阱进行剖析,必须经典。


《C专家编程》
Expert C Programming Deep C Secrets Peter Van  
Der Linden 人民邮电出版社 (2008-02出版)

评价:200多页,应当2天左右看完,本书读起来很舒坦,不可多得的好书,带你领略语法之外的奥秘,必读经典。


②数据结构与算法:

《清华大学计算机系列教材•数据结构(C语言版)(附光盘1张)》
吴伟民、 严蔚敏  
清华大学出版社

评价:数据结构都是类C的伪代码描述,初次接触编程的同学可能理解不了,我也一样。我是看严蔚敏视频学会的数据结构,希望这个办法对你们也同样有效。

《计算机算法设计与分析(第3版)》
 王晓东  
 电子工业出版社

评价:这是我们的课本,不过的确是学习它才把数据结构和算法入门了,为后面进阶做了铺垫。

《算法艺术与信息学竞赛•算法竞赛入门经典》
 刘汝佳  
 清华大学出版社

评价:了解数据结构怎么用,常用算法与思想,书不厚,但很给力。初学可能有障碍,但这的确是入门经典书籍,请不要放弃。

《算法导论(原书第2版)》
 科曼(Cormen T.H.)、等、 潘金贵  
机械工业出版社 (2006-09出版)

评价:经典中的经典,无需多说,不要问我看哪些内容,负责任的说:有能力就多看点,其实都能看懂,书中的内容与思想将会终身受用。

《编程之美:微软技术面试心得 》
《编程之美》小组  
电子工业出版社

评价:微软出品,像是一本小故事集,将数学和编程之美展露无疑,学起来很轻松,反复回顾收获颇丰。

《编程珠玑(第2版)》
Jon Bentley、黄倩、 钱丽艳  
人民邮电出版社

评价:主要是数据结构和算法,都是常用的内容,不过作者思维新奇,跟随作者一起思考会碰撞出不少火花,评价非常高的一本书,本人没有顺序阅读,感兴趣的内容翻了翻。

《算法艺术与信息学竞赛 》
刘汝佳  
清华大学出版社

评价:放在最后,因为此书的确很专业,我这点智商也驾驭不了,信息学竞赛必备。

《程序员面试宝典(第3版)》
欧立奇、刘洋、 段韬  
电子工业出版社

评价:这本书很神奇,大二下学期的时候我就买了并看完了,等到大三找工作的时候发现里边的提到的陷阱题目还是有点意思的,C语言掌握的怎么样拿这本书验一验就知道了。

《数学之美》
(《浪潮之巅》作者吴军最新力作,李开复作序推荐,Google黑板报百万点击)


评价:吴军博士那是相当犀利,《浪潮之巅》足以让人拜服了,此书一出无与争锋,放在数据结构与算法这里比较合适。


设计原本:计算机科学巨匠Frederick P.Brooks的思考

  • 评价:(《人月神话》作者最新力作,去伪存真,设计领域深度解读)


  • 代码之美 (2008年度JOLT大奖获奖图书)
  • 作  者:聂雪军 著 BC Group 译 (美)奥莱姆(Oram,A),(美)维尔森(Wilson,G) 编
  • 出 版 社:机械工业出版社
  • ISBN:9787111251330
  • 出版时间:2008-10-01
  • 版  次:1
  • 页  数:599
  • 装  帧:平装
  • 开  本:16开
  • 38位大师级的程序员,一步步讲解他们的项目架构,开发时的种种折中考虑(tradeoffs)以及何时必须打破常规,寻求突破。
      全球38位顶尖高手、众多语言之父经典之作。

程序员成长路线图:从入门到优秀

  • 作  者:N216 等 著
  • 出 版 社:机械工业出版社
  • ISBN:9787111339137
  • 出版时间:2011-05-01
  • 版  次:1
  • 页  数:260
  • 装  帧:平装
  • 开  本:16开
  • 评价:《程序员成长路线图:从入门到优秀》关注程序员的技术成长与心理成长,《程序员成长路线图:从入门到优秀》探讨程序员关注的热点、重点、难点问题,《程序员成长路线图:从入门到优秀》系统揭示程序员成长阶段的各种问题,《程序员成长路线图:从入门到优秀》以随笔形式、促膝交谈的方式,易产生共鸣。


版权所有:《曾巧文博客-关注互联网IT技术,记录生活点滴》 => 《计算机经典必读书籍系列一
本文地址://qiaowen.net/post-1249.html
除非注明,文章均为 《曾巧文博客-关注互联网IT技术,记录生活点滴》 原创,欢迎转载!转载请注明本文地址,谢谢。

有 7187 人浏览,获得评论 2 条

评论:

走廊地毯
2012-12-27 09:47
我觉得C语言的太难了!!!!
曾巧文
2012-11-27 12:52
【最常被程序员们谎称读过的计算机书籍】

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

在Stack Overflow(以及其它很多软件论坛)上,诸如”程序员最应该读的计算机书籍有哪些?“这样的问题会周期性的出现。这样的问题不断的被提出、被回答,只是形式不同罢了。相同的几本书总是会出现在清单的前几名内,所以,如果想知道人们谈论的都是些什么,你有必要去读一读这些书的。

大多数程序员真正读过的计算机书籍

代码大全(Code Complete)——两届Software Jolt Award震撼大奖得主!
程序员修炼之道(The Pragmatic Programmer)
C程序设计语言( C Programming Language)(第2版)
重构:改善既有代码的设计(Refactoring: Improving the Design of Existing Code)
人月神话(The Mythical Man-Month)
编码——隐匿在计算机软硬件背后的语言(Code: The Hidden Language of Computer Hardware and Software)
Head First 设计模式(Head First Design Patterns)
编程珠玑(Programming Pearls)
Effective Java中文版(Effective Java (2nd Edition))or Effective C++(第三版)中文版
Test Driven Development: By Example
上面的这些书我自己都读过,所以我不难相信很多不是很优秀的程序员也都读过它们。如果你对编程有足够的兴趣,能够来到这里读这篇博客,你很可能读过其中的大部分,甚至还有很多不在这个清单中的,所以我就不浪费时间每本书都评论一番了。我想说的是,这个清单上的每本书都是它各自领域里的奇书。所以,很多有愿望不断提高自己的编程技术的程序员都读过这些书,这就不足为怪了。

在人们备受推崇的计算机书籍中,还有一类书受到了独特的待遇。我称下面这个清单为“最常被程序员们谎称读过的计算机书籍”。这并不是说推荐这些书的人都没有真正读过它们。我只是有相当的信心怀疑更多的人只是在口头上宣称读过下列书籍,而实际上很少人真正读过它们。下面就是这个清单。

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

算法导论(Introduction to Algorithms)(CLRS)这本书的名称是所有出版过的计算机书籍中最让人误解一个。它被广泛的使用在很多大学里,通常被当作毕业生必需的算法课程。于是,只要在大学里上过计算机课程的学生几乎都有一本这样的书。然而,除非你拥有计算机硕士学位(而且是算法研究领域的),我怀疑你顶多只读过算法导论(Introduction to Algorithms)里节选的几章内容。这个书名让人误解,是因为”Introduction”这个词让人以为它很适合初级程序员。实际上不是。这本书对算法做尽可能详尽综合的介绍,就像其它一些随处可见的类似的书一样。请不要再把这本书推荐给初学者。
编译原理(Compilers: Principles, Techniques, and Tools)(the Dragon Book).这本恐龙封面的书涵盖了开发一个编译器你所需要的全部的知识。它的内容包括词汇分析,语法分析,类型检查,代码优化,以及其它很多高深的题目。请不要把这本书推荐给初级程序员,他们需要的只是分析简单的包含数学公式或HTML的字符串。除非你真的需要实现一个能够实用的编译器(或解释器),你根本不需要掌握这本“恐龙”书的全部强大威力。把它推荐给一个遇到简单文本分析问题的人,这证明你根本没有读过它。
计算机程序设计艺术(The Art of Computer Programming)(TAOCP)我经常听到人们把这本书描述为“每个程序员必读”的系列计算机书籍。我认为这明显不是实情。在我说出这样大不敬的话、被你们用板砖拍死之前,请让我做解释一下。这不是一本让你一页一页翻着读的书。这是一本参考大全书。把它放在你的书架上看起来会很不错(实际上也它确实很好),但如果想把它通读一遍,你需要几年时间,而且最后什么都没记住。这并不是说手边放这样一本书没有什么价值。它是一本参考书,当我遇到难题,走投无路时,很多次我都在这本书里找到办法。但这本书终究是被我当作参考书。它复杂难懂,很理论,里面的例子都是汇编语言的。好的一面是,如果你想在这本书里寻找针对某一问题的解决方案,如果你找不到,那就说明这个问题无解。它是一本对它所涉及到的领域做了最最详尽介绍的一本书。
Design Patterns: Elements of Reusable Object-Oriented Software(Gang of Four)这本书是唯一一本在这个清单里我从头到尾读过的书,读的结果是,我不知道该把这本书归到哪个类别。它出现在这个清单里,并不是因为我认为只有很少人真正读过它。很多人都读过。只是因为有更多推荐过这本书的人自己却没有读过。Design Patterns这边书的问题在于,很多书里给出的信息,你在其它很多地方都能看到。这样就使得一个初学者在维基百科上读了几篇关于设计模式的内容后,就敢在面试中宣称自己看过这本书。这就是为什么Singleton成了一种新的全局变量的原因。如果有更多的人花时间读过这本也叫做Gang of Four的书的原著,那世界上就不会有这么多人会把17种设计模式硬塞到一个日志(logging)框架里了。这本书最精彩的部分是每章里描述如何正确的使用一种模式的段落。遗憾的是,这些精华却在很多其它设计模式资料里被漏掉了。
C++程序设计语言(The C++ Programming Language)这本书不像一本编程教材,更像一本编程语言参考。有很多的迹象表明有人确实读过这本书,否则我们不可能有这么多的C++ 编译器可选择。编程初学者(或者甚至其它语言的专家),如果想学C++,不应该直接去啃C++程序设计语言(The C++ Programming Language)这本书。告诉他们去读《C++ Primer中文版》。
正如我之前说的,我知道你们当中会有一些人真正的读过这些书。那这篇文章不是针对你的,针对的是那些企图通过假装读过这些书来表现自己的民众。 如果你自己没有读过这些计算机书籍,请不要推荐给别人。这样做会耽误别人的时间,误人子弟,因为一些阅历更丰富的人可能会有更好的书(更针对某一领域,更容易理解,跟某种编程语言或某种编程水平更契合的书)来推荐。除此之外,你也能避免被那些真正读过计算机程序设计艺术(The Art of Computer Programming)的人用MMIX知识给拷问住造成的尴尬(如果你不知道我在说什么,那我指的就是你)。

[本文英文原文链接:Books Programmers Claim to Have Read ]

发表评论:

Powered by emlog 粤ICP备12040901号

>>本作品采用-知识共享署名-非商业-禁止演绎-协议-进行许可 |站点地图 | | | | 开放分类目录 |