• 当前位置:创业找项目 > 范文大全 > 程序员必备书籍
  • 程序员必备书籍

  • 来源:创业找项目
  • 时间:2018-05-06
  • 移动端:程序员必备书籍
  • 篇一:程序员一生必读的书籍

    程序员一生必读的书籍

    时间:2013-06-25 07:30产品中国 推荐:哆哆 围观: 2398 次

    软件业的特点是变化。若要提高软件开发的技能,就必须跟上技术发展的步伐。埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识。世界上并不存在速成的终南捷径,但阅读好的技术书籍,尤其是阅读大师们的经典著作,总能收到事半功倍之效。一位优秀的程序员,或许就是一名好的阅读者。好的阅读者,总是知道如何选择好的书籍。书海浩繁,良莠不齐。阅读技术好书,如与智者交谈,“与君一席话胜读十年书”;遭遇技术烂书,如被拐卖,“少小离家老大回,乡音无改鬓毛衰”。

    ThoughtWorks作为一家学习型组织,颇为看重每一位员工的学习能力。事实上,大多数ThoughtWorker的骨子里,都溢满了读书的基因。与书相伴,与书为伍,既是一种乐趣,又是一种习惯。当习惯成为自然时,书籍就成为生活和工作不可或缺的一部分了。如果说人文历史哲学等书籍是一碗心灵鸡汤,技术书籍大抵算得上是一味营养素,读之可以直接带来养分;可若是不了解自己究竟缺了哪一种营养,乱吃乱补,结果就可能适得其反了。有鉴于此,我和同事刘龙军结合自身的阅读经验,为新入职ThoughtWorks的程序员制作了一份读书路线图。我们将范围明确为程序员,是因为作为程序员的我们,它是我们最了解的工作角色。我们筛选出了一些大家公认的经典书籍,再结合自己的阅读体会,并广泛征集了更多

    ThoughtWorker的意见,包括徐昊,熊节,郑晔等资深阅读者,得到了这样一份草稿。在中国公司内部推出时,这份读书路线图得到了多数人的认可和欢迎。继而,我们在成都办公室陆续针对此读书路线图展开了读书俱乐部的活动,算是做了一次全方位大面积的试水。现在,我们觉得是推出正式版本,并面向更多受众的时机了。这就是大家现在看到的ThoughtWorks(中国)程序员读书雷达。它相较于之前的读书路线图草稿,分类更为专业,书籍筛选更为合理,并以雷达独有的优势,来展现不同的阅读维度与阅读深度。显然,读书雷达更能表达我们对所选书籍的深度认识。它可以作为学习型组织的一份知识输入,每一位程序员都可以根据自身水平与能力,选择适合自己的书籍,甚至组成一份表达阅读履历的读书路线图,在获得知识完善与汲取的过程中,提高自身能力,达至各个维度的巅峰。该读书雷达将书籍分为了如下四个象限:

    Coding Practice(编程实践)

    Architecture & Design(架构与设计)

    Methodology(方法学)

    Thought & Leadership(思想与领导力)

    我们之所以将方法学、思想与领导力放入到这个为程序员设计的读书雷达中,乃是因为软件开发不仅仅是个人的活动,也不仅仅是编码技巧和设计能力的体现。我们认为,开发技能其实是一项综合的系统工程。了解方法学,可以促进你对开发过程的理解;关于思想,则涉及大脑思维的修炼,可以提高程序员的抽象能力、学习能力,有助于帮助程序员发现事物发展的规律和本质;至于领导力,则有助于程序员在开发团队中发挥更大的作用,并能作为很好的团队成员,提升团队的整体能力。我们没有在这个读书雷达中包括语言类的书籍,原因在于这类书籍太过于发散,且更新较快;我们也不可能奢望在一张读书雷达图中,为不同的语言平台展现不同的优秀书籍。相比较语言的学习,我们更看重程序员在编程实践上的基本功。

    每个象限皆分为三个等级,分别为Fundamental、Medium和Advanced,对应初学、进阶和高级。在雷达图中,读者可以根据该书在图中距离圆心的远近,判断它的难度级别。我们还使用了不同的图示来表达对每本书的倾向性意见,其中,橙色的三角形图示代表“强烈推荐”,蓝色的圆形图示代表“推荐”。我们希望这类书籍对于程序员而言,可以根据自己目前的水平,选择适合自己的书籍。在这个层次上,强烈推荐可能就意味着必读。

    或许有人会质疑读书雷达的挑选标准。正所谓“每个人心中都有自己的哈姆雷特”,我们认同的未必能得到读者的认同,这是我们这个世界关于一种观点或态度的常态。我们发布这个读书雷达,只是希望能提供更多有用的信息与参考,而非代表一种读书权利的绝对化。事实上,我们也不可能做到。此外,”吾生也有涯,而知也无涯”,我们阅读的书籍毕竟有限,且读书雷达的容量也有限,难免会有遗珠之叹,这也是一件无可奈何之事。然而,我们欢迎更多的批评与建议,或许你推荐的好书恰恰是我们遗忘的,又或者激起了我们的共识,那么我们也会毫不吝啬地更新读书雷达,以求做到我们能力范围内的尽善尽美。当然,正如你看到的,我们在Methodology(方法学)象限,更多地推荐了与敏捷和精益相关的书籍。这是因为我们对敏捷技能与方法更有心得和信心。对于我和刘龙军还不够擅长的领域,我们不敢也不愿做出可能误导人的推荐。

    本读书雷达虽然冠以ThoughtWorks(中国)之名,但选书的倾向与意见并非

    ThoughtWorks(中国)官方的态度,而是作为制作者(龙军和我)个人表达的意见而已。如果你也加入了ThoughtWorks,你一定会发现这种自发组织的民间活动,在ThoughtWorks可谓俯拾皆是,不用诧异。

    我将在后面的文章中,根据每个象限为每一本书给出我们的推荐理由。此时,书籍成为了我们的臣民,我想对这个王国做一次不吝惜赞赏的巡视。最后,列出读书雷达的中英文书单,如下所示(感谢凯峰为这个雷达图建立的豆列,可以访问ThoughtWorks(中国)程序员读书雷达):

    Coding Practice | 编程实践

    基础篇

    Clean Code《代码整洁之道》

    Pragmatic Unit Testing《单元测试之道》

    The Productive Programmer《卓有成效的程序员》

    Test-Driven Development By Example《测试驱动开发》

    Clean Coder《程序员的职业修养》

    The Art of Readable Code《编写可读代码的艺术》

    进阶篇

    Refactoring To Patterns《重构与模式》

    Implementation Patterns《实现模式》

    Code Complete《代码大全》

    The Pragmatic Programmer《程序员修炼之道》

    高级篇

    Structure and Interpretation of Computer Programs《计算机程序的构造和解释》Working Effectively with Legacy Code《修改代码的艺术》

    Architecture & Design | 架构与设计

    基础篇

    Agile Software Development 《敏捷软件开发:原则、实践与模式》

    Head First Design Patterns《深入浅出设计模式》

    Design Patterns 《设计模式》

    进阶篇

    The Art of UNIX Programming 《Unix编程艺术》

    Practical API Design 《框架设计的艺术》

    Domain Specific Languages 《领域特定语言》

    Patterns of Enterprise Application Architecture 《企业应用架构模式》高级篇

    Release It

    Domain-Driven Design 《领域驱动设计》

    Enterprise Integration Patterns《企业集成模式》

    Beautiful Architecture《架构之美》

    Pattern-Oriented Software Architecture《面向模式的软件架构》Methodology | 方法学

    基础篇

    User Stories Applied《用户故事与敏捷方法》

    The Gold Mine《金矿》

    Scrum and XP From the Trenches《硝烟中的Scrum和XP》Continuous Integration《持续集成》

    Extreme Programming Explained《解析极限编程》

    进阶篇

    Lean Thinking《精益思想》

    Continuous Delivery《持续交付》

    How Google Tests Software

    Agile Testing

    Extreme Programming Refactored《重构极限编程》

    高级篇

    Specification By Example

    Thought & Leadership | 思想与领导力

    基础篇

    The Effective Executive《卓有成效的管理者》

    Are Your Lights On?《你的灯亮着吗》

    Becoming A Technical Leader《成为技术领导者》

    进阶篇

    篇二:对程序员能力提升的10本经典书籍

    程序员应该阅读的10本经典书籍

    如果你是一个程序员,除了编码之外,你还需要大量的阅读。今天我要为大家介绍几本值得一读的书,包括《The Pragmatic Programmer》,《The Mythical Man-month: Essays on Software Engineering》和《Clean Code: A Handbook of Agile Software Craftsmanship》。

    书籍是知识和智慧的重要来源。但不幸的是,现在很多人已经不愿意看书了。程序员更是罕见地会去读书,最常见的依靠互联网搜索结果来找寻答案。

    技术向前的步伐比人类历史上的任何时候都要走得更快。用不了几个月,就会有新的编程语言和工具问世,弥补现有语言、工具和方法的缺陷。

    事实上,许多伟人都已经遇到过差不多的问题,并指出了解决这些问题的最佳途径。而这些方法和解决方案都收录在一些超棒的书籍中。 下面就是在这个行业中开发人员应该阅读的一系列伟大的书籍。

    《The Pragmatic Programmer》

    绝对是书籍中的瑰宝!这不是常规地建议你编码,编码还是编码的编程书。事实上,它并不限定于某种特定的编程语言:在这本书中的智慧适用于所有编程语言。

    这本书对许多有趣的领域都提出了真知灼见,如各种探索性编程,在

    代码中编码,从模型中分离的观点,昂贵的工具并不产生更好的设计,开发一个伟大的团队,管理预期,避免知识的重复等。

    这本书不仅可以帮助改变编码的习惯,还可以改变你作为一个程序员的性格。它充满了关于如何改进自己和代码的实用建议。 还有一个总结了提示和检查清单的小册子。

    《The Mythical Man-month》: 关于软件工程的散文集

    非常经典,被奉为软件行业的圣经。第一次出版于1970年,但是里面的内容比起以前,可能更适用于现在!

    有听说过这些话吗?它们均摘自于这本书!

    “所有的程序员都是乐观的:一切都会顺利。”

    “添加人手到一个延迟的项目中只会导致完成得更慢。”

    “生一个孩子总是需要九个月的时间,不管安排多少个女性。”

    “一个煎蛋,承诺在两分钟内完成,但如果两分钟后还是没有准备好,那么客户有两种选择——等待或吃半熟品,软件客户也只能这样选择。”

    不幸的是,一年又一年地过去,而我们总是在软件开发中犯着相同的错误。这本书是每一个项目经理和开发人员都必须阅读的。

    正从标题中所说的那样,这是一本散文集。文辞优美。这本书唯一的缺点就是引用了年迈25的古老技术。但是,这并不影响这本书的魅力。

    《Clean Code》: 敏捷软件工艺的手册

    有没有在看他人代码的过程中,不由自主地发出“哦,天哪,这是什么?”的经历,那么这个人肯定没有阅读过《Clean Code》。

    这是一本关于软件工艺史诗般的书籍。这本书不仅会告诉你如何编写好的代码,而且还提供了软件开发的高效途径。照着去做的话,必将改变你的工作前景。

    书中描述了编写干净代码的原则、模式和做法。里面一些关于整洁代码的几个案例都是开发人员宝贵的经验教训。

    请注意,虽然在这本书中的所有实例都是关于Java的,但是从中学到的经验教训可以应用于任意的编程语言。

    这篇文章所列出的这些书籍中,这本书出版得比较晚,所以可能更能引起年轻开发人员的共鸣。

    《The Clean Coder》:专业程序员的行为守则

    此列表中Rob Martin的第二本书。建议你在读了《Clean Code》后,再读这本书。《Clean Code》讲的是代码,而这本书是关于“Coder”。 该书探讨了一些程序员经常忽视的主题。

    成为专业的程序员意味着什么?

    如何打磨自己成为一个真正的软件工匠

    冲突和紧张的日程处理

    如何管理你的时间?如何扩张技能?

    何时说“不”

    避免倦怠

    ..以及更多。

    你可能并不总是同意作者的观点,但它提供了良好的精神食粮。这可能并非你所期望的,但可能正是你所需要的。

    《Refactoring》:改善已有代码的设计

    不管你怎么努力,除非改进它,否则,你交付的代码不会是最优化的。有时即使工作正常,也会实施重构。

    这本书从重构的通用原则说起:为什么以及什么时候重构,如何处理有关重构的管理等等。然后讲述了如何实现改进的过程。 代码的设计缺陷指标是什么?

    如何构建类、方法和其他的逻辑块?

    单元测试

    如何将功能从一个对象移动到另一个?

    重构工具

    ..以及更多

    这是改进现有代码必读的书。请注意,所有的代码示例用的都是Java,但现在复制起来也很方便!

    《Working Effectively With Legacy Code》

    我们都必须工作于一些我们痛恨的东西——对于大多数人而言,遗留代码真是令人头痛无比。

    如何修改遗留代码?如何识别需要重构的代码部分?如何破坏重构代码之间的依赖关系?如何确保新的代码能完成预期的工作?如何一次一小步地重构遗留代码?

    在这本杰出的书中,只是回答了一些关键的问题。如果非要用一句话总结这本书的精华,那就是“写单元测试,重构代码,确保测试都通过。”

    遗留代码不是一个神话,它是一个活着的传奇!在软件行业中没有什么比遗留代码更能经受测试的考验了——Deepak Karanth

    《Code Complete》:软件构建的实用手册

    在一个庞大的作品中,如果你想要阅读所有关于编程结构和最佳实践的内容,那么这是本必读书。真正的百科全书式书籍——其最新版本有多达960页!不要被这本书的厚度吓倒,你可以按照自己的节奏阅读。最后,你会庆幸你阅读了这本书。

    书中解释了软件开发的每个方面。从代码结构,代码格式化,到变量、方法和类的命名,再一路说到管理一个团队,对所有一切都提出了实用的建议。

    提供了覆盖特定主题的丰富参考和补充材料,这些也非常值得一读。 只有一小部分的软件开发人员会读这本书,所以如果你也是他们中的一个,那么你就有了优势。通过阅读这本书,你就可以获得许多年宝

    篇三:程序员必看30本经典书籍

    .net程序员必看30本经典书籍

    作者:admin 更新时间:2009-10-29 13:27 点击:1152次

    一.入门

    1.《HTML与CSS入门经典(第7版) 》HTML入门

    点评:html语言的入门,由于html极其简单所以同类其他书也可代替,本书并非经典,本书摆在这里纯属占位!你可以用其他书代替。

    2.《C#入门经典(第3版)》C#入门

    点评:经典中的经典,个人认为是30本书里最重要的,虽然其他讲C#的好书也很多但大多1.0版的,很多在书店已经绝版,被《程序员》等机构评选为2006年最受读者喜爱的十大IT图书之一。

    3.《精通SQL--结构化查询语言详解》SQL数据入门

    点评:不能说很好,但也不差,感觉吃透全书也可以应付如常SQL语句了。

    4.《专家门诊--SQL SERVER开发答疑200问》SQL数据入门

    点评:好书,正好结合上本,可惜的是不是Sqlserver2005。

    5.《SQL SERVER 2005基础教程》SQL数据入门

    点评:书一般,不过还是很全的,和同类书比起来还是不错。

    入门总结:这几本书学的快的话2个月,慢则数月,如果真的吃透基本上就打了很好的底子!当然不能说100%,很多东西还要后面的学习来发现不足,重新学习。作者http://blog.csdn.net/21aspnet/。

    二.基础

    6.《Programming ASP.NET中文版(第3版)》ASP.NET基础

    点评:经典中的经典,全球经典,五年三版,权威著作,这本书是最最基础的ASP.NET入门书,讲的非常全涵盖所有基本面,每一个控件都细细说明,非常易懂,不过本书讲的难免有点杂,初学者看了难免云里雾里所以要下一本书提纲挈领,此书非看不可。

    7.《ASP.NET 2.0经典教程--C#篇》ASP.NET基础

    点评:经典,和上一本结合起来最好,本书讲大的方面,看了能让人明白asp.net分那几个步骤,不过唯一的缺陷就是不细,上一本正好补充,此书非看不可。

    8.《C#高级编程(第4版)》C#基础

    点评:好书却不经典,本书被吹嘘的神乎其神,被评选为2005年最权威的十大IT图书之一,2006年最受读者喜爱的十大IT图书之一,其实本书不过讲了一些其他书没有的内容而已,内容比较多而已,本书也是所有.NET书中字数最多的一本,蛮厚的,可以当作C#语法的提高,做参考书吧,不过总体而言写的还是可以。作者http://blog.csdn.net/21aspnet/

    9.《JAVASCRIPT 权威指南(第四版)》Javascript基础

    点评:好书却不经典,这本书也被吹嘘的神乎其神,其实后半部分全部是Javascript语法参考,感觉本书只能做参考书,讲语法还是可以的讲的还算深,内容也很详,不过看懂前半部分后来喜欢它的原因却变后半部分,和下一本结合就成更完美的参考书。

    10.《WEB开发人员参考大全:最完整的HTML、CSS与JAVASCRIPT工具书》Javascript,html,css基础

    点评:好书,书如其名,作者是位老先生,经验很丰富,本书是每一位从事BS开发人员的必备参考书和上一本结合就更好了。

    11.《SQLServer2005从入门与精通(应用技术基础) 》SQLServer基础

    点评:好书,可以帮助读者对SQLServer增进了解,毕竟是微软出版社的,书中讲的知识都是开发人员必备的,例如聚合函数,嵌套事务,报表等等。

    基础总结:这几本书学的估计要4个月了,慢的话半年都不一定学透,其实日后开发中用到的主要就是这个时候学的基础上综合应用,宁慢勿快!!!

    三.应用

    12.《JavaScript 高级程序设计》javascript应用

    点评:经典,比《JAVASCRIPT 权威指南(第四版)》讲应用讲得多,有Ajax部分,作者希望大家能把javascript按面相对象的思想处理。

    13.《圣殿祭司的ASP.NET 2.0开发详解——使用C#》asp.net应用

    点评:好书,作者是台湾的,感觉台湾作者都有欧美风格,本书是专门针对2.0新增的部分,没有1.1部分,个人感觉这样对1.1的作者很好,只要看这本书就够了。

    14.《ASP.NET 2.0高级编程(第4版)》asp.net应用

    点评:好书,出到第4版了,和《C#高级编程(第4版)》有的一拼,也是大部头,讲的很全,不过不觉得有多少闪光的地方,权作参考书吧。

    15.《Beginning C# Objects中文版——概念到代码》C#应用

    点评:好书,讲C#怎么面向对象的还讲了UML以及建模的方法同时译者得水品很高。不会面向对象是很可怕的,当然光会面向对象也不够还要和重构设计模式极限编程结合。

    16.《ASP.NET 2.0数据库入门经典(第4版)》ADO.NET应用

    点评:鸡肋,可惜的是这本书是Beta版本但是出版社不知道出于什么原因没有写明Beta版本,而且代码是VB.NET,不过这本书讲数据操作ADO.NET还是很全的最起码让初学者明白个大概。正式版有E文的,大家自己找吧。

    17.《SQL Server 2005数据库开发实战》SQLServer2005应用

    点评:好书,作者是章立民老师,台湾4届MVP,想想当初本人就是看他书入门的,这是一本公认的很好入门书籍。作者http://blog.csdn.net/21aspnet/

    18.《ASP.NET2.0 经典案例教程》ASP.NET应用

    点评:好书,讲了几个经典例子,学了许多知识总是要用实例串起来的也是在这个过程中学习一些架构只是。

    应用:这几本书学的估计要4个月,慢的话半年都不一定学透,这个时候主要扩大知识面,要结合实例,最好是做做留言板之类的小小项目。

    四.提高

    19.《ASP.NET2.0XML高级编程(第3版)》XML数据提高

    点评:好书,小黑写的很好,涵盖了XML在asp.net下的方方面面,遇到不明白的要多读几遍。讲XML的书不多,不过有这本也就够了。

    20.《Ajax实战》Ajax实战应用

    点评:好书,2006年是中国出版界的Ajax年,感觉同系列(另2本是《Ajax基础教程》《Ajax高级编程》)中这本最好,讲理论将的很全,不过要有Javascript基础的,写的很深个

    别地方有点啰唆。其实Ajax就是无刷新,现在微软已经推出许多控件大大减轻大家学习,自己编码的难度了。

    21.《.NET安全编程》数据提高

    点评:好书,安全和加密是不容忽视的。书中讲到了散列算法,对称加密,数字签名,安全策略等等适用的安全知识!

    22.《ASP.NET 2.0技术内幕》asp.net提高

    点评:好书,英文版是绝对的好书,微软出版社出版的绝对不会差!不过此书不适合初学者,初学者最好看会《Programming ASP.NET中文版(第3版)》再看此书。本书讲了事件模型,数据绑定模型,网页状态,缓存,会话等内容。作者http://blog.csdn.net/21aspnet/

    23.《框架设计(第2版):CLR Via C#》C#提高

    点评:经典,微软出版社出版的,作者作为深受编程人员爱戴和尊敬的编程专家,微软.NET开发团队的顾问!本书第一本和他的修订版非常畅销,本书让大家从更深层次了解CLR,提高对.NET的整体把握。不看此书看遍千本也枉然!

    24.《VISUAL C# 2005文件IO与数据存取秘诀》数据应用

    点评:好书,作者是章立民老师,台湾4届MVP,想想当初本人就是看他书入门的,这也是一本公认的很好入门书籍。开始还以为全书讲文件IO操作,其实就前面一点,后面更多的是讲程序和数据库交互。

    25.《EFFECTIVE C#中文版:改善C#程序的50种方法》C#应用

    点评:非常实用的书,译者水平很高,不过这本书一度跳票几年,07年4月才出。本书由50个小主题组成,就如何高效地使用C#语言和.NET库,为程序员们提供了一些实用的建议,而这些问题都是经常遇见的。本书主要还是讲1.1的,2.0只在最后提了下。

    提高:这几本书学的估计要4个月,慢的话几年都搞不定,这个时候相信在知识的广度深度结合度上都有了很大提高。

    五.飞跃

    26.《ASP.NET AJAX程序设计-第I卷:服务器端ASP.NET 2.0 AJAX EXTENSIONS与ASP.NET AJAX CONTROL TOOLKIT》Ajax飞跃

    点评:好书,以前很多复杂的Ajax和javascript代码被微软整合为控件,本书主要主要介绍这个,作者在微软工作。

    27.《ASP.NET 2.0高级编程》asp.net飞跃

    点评:好书,作者是《ASP.NET 2.0技术内幕》的作者,感觉是在那本书上的再提高,讲了ASP.NET内部机理,HTTP处理程序和模块,自定义控件等高级专题。

    28.《重构-改善既有代码的设计(中文版)》语言飞跃

    点评:不朽的著作,重构和设计模式齐名,这本书需要用一生来学习,本书是用其他语言所写。不过会C#的人应该能看懂。

    29.《C#设计模式》C#飞跃

    点评:一般,由于设计模式的代表作《设计模式--可复用面向对象软件的基础》年代久远而且是用其他语言写的目前市面上也只有这本,其实《C#设计模式》的作者最初写了Java版本的,书店有,所以估计就是把语言换成C#。

    30.《ADO.NET 2.0高级编程》C#飞跃

    点评:还可以,讲了ADO.NET的高级主题非连接类,关联的非连接数据,事务,元数据,大型对象等。

    飞跃:这几本书学的估计要很久很久,看个人造化。

    最后的总结:按照整个流程学习,有问题找CSDN论坛,结合MSDN,baidu,Google没有解决不了的问题。成为中级程序员以后就要朝高级程序员发展。

    (责任编辑:admin)


    程序员必备书籍》由:创业找项目整理
    链接地址:http://www.gjknj.com/duwu/13174.html
    转载请保留,谢谢!
  • 下一篇:儿童侦探故事书
  • 猜你喜欢