最近在网上看了一个很是好的帖子《程序员一辈子必读的书》(个人腾讯微博上有分享该贴子连接,有兴趣就点击进去看看吧),该贴的第一个张图片是一个雷达图, 这张图是由ThoughtWorks(全球软件设计与定制领域的领袖级企业)的资深人士提供的,它将程序员要读的书分为四个类别,每一个类别又分为初级、进 阶和高级读物,并用黄色三角形点出了强烈推荐阅读的书籍。四个类别包括:java
相信这张图会帮助到不少迷茫的职业人,由于好书就像明灯同样会照亮咱们的方向,那些大师级的人物将他们的经验分享给咱们,真的有如浴春风的感 觉。有时候会很感慨国外有那么多厉害的技术做家写了那么多好的做品,而国产技术书籍中的好书真算得上是百里挑一。有时候也会问本身,能不能作一个技术做家 呢,我想个人修炼还远远不够。下面就把这些好书罗列出来跟你们分享。程序员
还有不少好书可能由于选择标准的不一样在雷达图中虽然没有出现,可是仍然值得每一个程序员去阅读,这些好书包括:web
C语言之父Dennis Ritchie以及Brian Kernighan两位老师合著的神同样的书籍。我到如今都没有想明白为何国内只有极少数的几所大学用这本书做为教材,难道C语言的入门书中还有出其右 者吗?这本书的内容无比精彩,不论是对于初学者仍是有经验的程序员;这本书中的代码无与伦比,几乎每一段代码都是经典。即便你尚未读过本书,可是你必定 据说过一个叫Hello, world的程序,该程序就出如今这本书中。面试
这本书是号称软件工程领域的第一奇书,与《人件》合称为软件工程著做中的倚天剑和屠龙刀。Brooks博士为人们管理复杂项目提供了最具洞 察力的看法。既有不少发人深省的观点,又有大量软件工程的实践,其内容都是来自Brooks博士在IBM公司System/360家族和OS/360中的 项目管理经验。这本书是项目经理和系统分析师必读的不朽之做,也是流行了30多年的传奇经典。算法
该书是我最近几乎天天都翻翻的一本书,准确的说这本书是硅谷创业之父Paul Graham的文集,主要介绍优秀程序员(书中称之为黑客,固然这和咱们尤为是国内对黑客的理解有所差异)的爱好和动机,讨论它们如何成长以及如何为世界 作出贡献,固然也包括了对编程语言和优秀程序员工做方法等的探讨和思考。该书的内容不但有助于了解计算机编程的本质、互联网行业的规则,还会帮助读者了解 咱们这个时代,迫使读者独立思考。该书的中文版是阮一峰博士翻译的,翻译的水准和书中的旁注都至关好。spring
除此以外,由于本身作了很长时间的Java程序员,有一些Java方面的好书能够推荐给你们。编程
Bruce Eckel的书对于学习如何在Java语言环境中使用好面向对象技术极其实用。本书中的不少代码都变成了招聘Java程序员的面试题,由于那些代码都极具 参考价值。Eckel本人具备多种语言的大量经验,还有用面向对象方式进行思考的扎实技能,是C++标准委员会有表决权的委员,他写的《Thinking in C++》一书也是屡次获奖的著做。本书将交给你不少实用的Java开发技术。设计模式
本书是理解优秀 Java 程序设计原则的最佳书籍。连Java之父James Gosling也称赞本书为他很须要的书籍。本书讲解了78条原则,每一条都很精彩,例如第8条和第9条中关于重写equals()方法的讲解、第18条 用接口替代抽象类、第57条至第65条关于异常使用的原则,一切都无比精彩。Bloch是Sun公司Java平台库的架构师,因此他透彻地了解这门语言, 并且他本人也编写了Java语言中大量有用的API。此书必读!api
其实国产的Java书籍里面也有部分优秀的书籍,虽然国产书的质量整体偏低,可是最近几年仍是有不少有责任感的技术做家(他们不少人同时也是一线程序员或架构师)写了很多好书。tomcat
若是你之前不是计算机相关专业又想转型从事软件行业,那么我推荐先看一些专业气质养成类书籍,固然最入的书就是《计算机导论》、《计算机文化》 之类的书,也能够看看《计算机科学概论》或者是《计算机专业英语》,建议看原版的,一方面对整个行业有一个全面的了解,另外一方面锻炼一下本身的英语水平。 不管如何,我以为程序员仍是应该让英语成为本身的工做语言。
若是你但愿从零基础开始作一个Java程序员,那么我建议的这些书的阅读顺序是这样的(每项读一本就OK了): 1. Computer Concepts / Computer Science Illuminated 2. The C Programming Language 3. Core Java (Vol. 1 & Vol. 2) / Introduction to Java Programming 4. MySQL Crash Course / 深刻浅出MySQL / Sams Teach Yourself SQL in 10 Minutes 5. Thinking in Java / Effective Java / 编写高质量代码:改善Java程序的151个建议 6. Servlet & JSP: A Tutorial / Head First Servlets & JSP 7. Java与模式 / Design Patterns Explained / 设计模式之禅 8. 精通Hibernate / Java Persistence with Hibernate 9. Spring in Action / Spring企业应用开发实战 / Spring技术内幕 10. Clean Code / Refactoring Impoving the Design of Existing Code 11. The Well-Grounded Java Developer 12. Algorithms / Data Structures and Algorithm Analysis in Java 13. POJOs in Action / Core J2EE Patterns: Best Practices and Design Strategies 14. Java Performance 15. Software Engineering A Practitioner’s Approach