程序員必讀書籍及導讀指南

最近在網上看了一個很是好的帖子《程序員一輩子必讀的書》(個人騰訊微博上有分享該貼子連接,有興趣就點擊進去看看吧),該貼的第一個張圖片是一個雷達圖, 這張圖是由ThoughtWorks(全球軟件設計與定製領域的領袖級企業)的資深人士提供的,它將程序員要讀的書分爲四個類別,每一個類別又分爲初級、進 階和高級讀物,並用黃色三角形點出了強烈推薦閱讀的書籍。四個類別包括:java

  • 編程實踐(Coding Practice)
  • 設計與架構(Design & Architecture)
  • 方法學(Methodology)
  • 思想與領導力(Thought & Leadership)

程序員必讀書籍的雷達圖

  相信這張圖會幫助到不少迷茫的職業人,由於好書就像明燈同樣會照亮咱們的方向,那些大師級的人物將他們的經驗分享給咱們,真的有如浴春風的感 覺。有時候會很感慨國外有那麼多厲害的技術做家寫了那麼多好的做品,而國產技術書籍中的好書真算得上是百裏挑一。有時候也會問本身,能不能作一個技術做家 呢,我想個人修煉還遠遠不夠。下面就把這些好書羅列出來跟你們分享。程序員

Code Complete 《代碼大全》

這裏寫圖片描述


Refactoring《重構:改善既有代碼質量》

這裏寫圖片描述


Clean Code 《代碼整潔之道》

這裏寫圖片描述


The Pragmatic Programmer: From Journeyman to Master 《程序員修煉之道:從小工到專家》

這裏寫圖片描述


The Practice of Programming 《程序設計實踐》

這裏寫圖片描述


Design Patterns 《設計模式》

這裏寫圖片描述


Domain-Driven Design 《領域驅動設計》

這裏寫圖片描述


The Art of UNIX Programming 《UNIX編程藝術》

這裏寫圖片描述


Practical API Design 《軟件框架設計的藝術》

這裏寫圖片描述


Patterns of Enterprise Application Architecture 《企業應用架構模式》

這裏寫圖片描述


  還有不少好書可能由於選擇標準的不一樣在雷達圖中雖然沒有出現,可是仍然值得每一個程序員去閱讀,這些好書包括:web

The C Programming Language 《C語言程序設計》

這裏寫圖片描述

  C語言之父Dennis Ritchie以及Brian Kernighan兩位老師合著的神同樣的書籍。我到如今都沒有想明白爲何國內只有極少數的幾所大學用這本書做爲教材,難道C語言的入門書中還有出其右 者嗎?這本書的內容無比精彩,不論是對於初學者仍是有經驗的程序員;這本書中的代碼無與倫比,幾乎每一段代碼都是經典。即便你尚未讀過本書,可是你必定 據說過一個叫Hello, world的程序,該程序就出如今這本書中。面試


The Mythical Man-Month 《人月神話》

這裏寫圖片描述

  這本書是號稱軟件工程領域的第一奇書,與《人件》合稱爲軟件工程著做中的倚天劍和屠龍刀。Brooks博士爲人們管理複雜項目提供了最具洞 察力的看法。既有不少發人深省的觀點,又有大量軟件工程的實踐,其內容都是來自Brooks博士在IBM公司System/360家族和OS/360中的 項目管理經驗。這本書是項目經理和系統分析師必讀的不朽之做,也是流行了30多年的傳奇經典。算法


Hackers and Painters 《黑客與畫家》

這裏寫圖片描述

  該書是我最近幾乎天天都翻翻的一本書,準確的說這本書是硅谷創業之父Paul Graham的文集,主要介紹優秀程序員(書中稱之爲黑客,固然這和咱們尤爲是國內對黑客的理解有所差異)的愛好和動機,討論它們如何成長以及如何爲世界 作出貢獻,固然也包括了對編程語言和優秀程序員工做方法等的探討和思考。該書的內容不但有助於瞭解計算機編程的本質、互聯網行業的規則,還會幫助讀者瞭解 咱們這個時代,迫使讀者獨立思考。該書的中文版是阮一峯博士翻譯的,翻譯的水準和書中的旁註都至關好。spring


The Art of Computer Programming 《計算機程序設計藝術》

這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述


Introduction to Algorithms 《算法導論》

這裏寫圖片描述


Object-Oriented Analysis and Design with Applications 《面向對象分析與設計》

這裏寫圖片描述


  除此以外,由於本身作了很長時間的Java程序員,有一些Java方面的好書能夠推薦給你們。編程

Thinking in Java 《Java編程思想》

這裏寫圖片描述

Bruce Eckel的書對於學習如何在Java語言環境中使用好面向對象技術極其實用。本書中的不少代碼都變成了招聘Java程序員的面試題,由於那些代碼都極具 參考價值。Eckel本人具備多種語言的大量經驗,還有用面向對象方式進行思考的紮實技能,是C++標準委員會有表決權的委員,他寫的《Thinking in C++》一書也是屢次獲獎的著做。本書將交給你不少實用的Java開發技術。設計模式


Effective Java

這裏寫圖片描述

本書是理解優秀 Java 程序設計原則的最佳書籍。連Java之父James Gosling也稱讚本書爲他很須要的書籍。本書講解了78條原則,每一條都很精彩,例如第8條和第9條中關於重寫equals()方法的講解、第18條 用接口替代抽象類、第57條至第65條關於異常使用的原則,一切都無比精彩。Bloch是Sun公司Java平臺庫的架構師,因此他透徹地瞭解這門語言, 並且他本人也編寫了Java語言中大量有用的API。此書必讀!api


《Java與模式》

這裏寫圖片描述


The Well-Grounded Java Developer 《Java程序員修煉之道》

這裏寫圖片描述


POJOs in Action

這裏寫圖片描述


  其實國產的Java書籍裏面也有部分優秀的書籍,雖然國產書的質量整體偏低,可是最近幾年仍是有不少有責任感的技術做家(他們不少人同時也是一線程序員或架構師)寫了很多好書。tomcat

《設計模式之禪》

這裏寫圖片描述


《編寫高質量代碼:改善Java程序的151個建議》

這裏寫圖片描述


《Spring 3.x企業應用開發實戰》

這裏寫圖片描述


《Tomcat與Java Web開發技術詳解》

這裏寫圖片描述


《瘋狂Java:突破程序員基本功能的16課》

這裏寫圖片描述


  若是你之前不是計算機相關專業又想轉型從事軟件行業,那麼我推薦先看一些專業氣質養成類書籍,固然最入的書就是《計算機導論》、《計算機文化》 之類的書,也能夠看看《計算機科學概論》或者是《計算機專業英語》,建議看原版的,一方面對整個行業有一個全面的瞭解,另外一方面鍛鍊一下本身的英語水平。 不管如何,我以爲程序員仍是應該讓英語成爲本身的工做語言。

Computer Concepts 《計算機文化》

這裏寫圖片描述


Computer Science Illuminated 《計算機科學概論》

這裏寫圖片描述


Computing Essentials 《計算機專業英語》

這裏寫圖片描述


  若是你但願從零基礎開始作一個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

相關文章
相關標籤/搜索