對於一個程序員而言,在學校裏學不到多少工做中真正須要的知識,只有在工做中實踐積累而且看一些優秀的書籍,把實踐和理論結合起來纔可以更好的工做。尤爲是在技術日益發展和變化的今天,每一個開發者更應該主動的看書去學習編程技巧而且改變編程方法,才能應付工做中各類複雜的項目。同時也能夠在程序設計中更高效、彈性和準確的解決問題。下面列出了11本對開發人員頗有益的書籍,你們能夠從中選取感興趣的進行閱讀。html
1. 《代碼大全》(Code Complete)程序員
第二版的代碼大全增長了不少與時俱進的內容,涵蓋了軟件構建過程當中的全部細節。它從軟件質量和編程思想等方面論述了軟件構建的各個問題,並詳細論述了緊跟潮流的新技術、高屋建瓴的觀點、以及簡單明瞭的通用概念,固然也含有豐富而典型的程序示例。算法
評語:引用一位網友的評論:偏偏是這種藝術與科學相互融合的產物帶給程序員無比的知足感。老小皆宜的讀物,這本書不論對技術大牛、亦或是自學剛入門的程序員都是大有益處的,感興趣的能夠去看看。編程
2.《程序員修煉之道》(Pragmatic Programmer)數據結構
中文名翻譯的很形象,這是一本介紹軟件開發中日益增加的規範和技術技巧的書籍,即根據需求,建立用戶樂於接受的、可工做和易維護的代碼,保持代碼靈活和易於改編重用的架構技術。另外也有防止軟件變質、提升編寫靈活、避免相同設計、以及對代碼防禦等內容。架構
評語:一本能夠提升程序員實效性的書籍,這本書對有必定代碼量和項目經驗的人能引發共鳴,你看完後會反思:程序爲何要這麼設計?怎麼才能寫出更好的程序?如何才能在編程中少走沒必要要的彎路?推薦一些技術大牛閱讀。數據結構和算法
3.《計算機程序設計與解釋》(Structure and Interpretation of Computer Programs)編程語言
該書被世界各地100多所院校用做教材,其中包括美國斯坦福大學、英國牛津大學、日本東京大學等。在修訂版中,做者根據十餘年的教學實踐,對大部分重要設計系統都從新修改並作過測試,包括各類解釋器和編譯器。涵蓋面很廣,從數據抽象、過程抽象、迭代、高階函數等編程到數據結構和算法。函數
評語:每一位技術大牛都應該閱讀這本書。由於本書清晰、簡潔和富於才智,適合那些深入理解計算機科學的人們。學習
4.《C程序設計語言》(C Programming Language 2nd Edition)
值得一提的是本書是由C語言之父Dennis Ritchie和Brian W. Kernighan共同編寫,是一部介紹C語言及程序設計方法的權威性經典著做。本書全面講述了C語言的各個特性及程序設計方法,配合典型例證,使得本書通俗易懂,實用性強。
評語:該書是學習C語言必讀書籍,堪稱經典,有C語言的「聖經」美稱,其實用性,會讓讀者愛不釋手。
5.《算法導論》(Introduction to Algorithms)
本書全面介紹了計算機算法,涵蓋的內容有:算法在計算中的做用,機率分析和隨機算法的介紹,另外也介紹了隨機化和線性規劃技術的近似算法等。全書還提供了900多個練習題和思考題以及詳細的實例研究。
評語:《算法導論》是一本將嚴謹性和全面性融爲一體的算法類書籍,能夠與高德納的《計算機程序設計藝術》相媲美,該著做有點深奧,一朝一夕讀不透,建議讀者多閱讀幾遍。
6.《重構:改善既有代碼的設計》(Refactoring: Improving the Design of Existing Code)
本書揭示了重構的過程,揭示了重構的原理和最佳實踐方式,可以幫助你一次一小步的修改你的代碼,從而減小了開發過程當中的風險。書中還給出了70多個可行的重構,以及指導你什麼時候何地應該開始挖掘代碼以求改善。
評語:該著做適合軟件開發人員、項目管理人員閱讀,讀者讀完後或許會有醍醐灌頂般感受,書中蘊含着精華,值得反覆咀嚼。
7.《人月神話》(The Mythical Man-Month)
做者Frederick P. Brooks曾榮獲圖靈獎,本書爲人們管理複雜項目提供了頗具洞察力的看法,有發人深省的觀點,也有大量軟件工程實踐,包括做者在IBM公司System 360家族和OS 360中項目管理經驗,新的版本中也還有做者對某些觀點新的認識、一些精華的提煉、也有大量工程實踐,爲每一個複雜項目的管理者給出了本身的真知灼見。
評語:本著做適合軟件開發人員、項目經理、系統分析師等工程管理人士閱讀。最好有面向對象經驗,此書雖是一本非技術書,但會給你帶來不少感觸和實用價值。
8.《計算機程序設計藝術》(The Art of Computer Programming)
本書是高德納(Donald Ervin Knuth)所著,做者曾因三卷書得到美國1974年圖靈獎,是20世界最佳12部學術專著之一。本書結合了大量數學知識,分析不一樣領域中的各類算法,其引入的許多術語、獲得的許多結論都變成了計算機領域的標準術語和被普遍引用的結果,此外也描述了編程在模擬、數值方法、符號計算、軟件與系統設計等方面的應用。
評語:比爾·蓋茨曾說過:若是讀懂整套書的話,請給他發一份你的簡歷。經過這句話足以說明該著做對開發者影響是巨大的。屬於純理論級別的,每次翻閱都會有新的收穫,能夠當「辭海」來讀。
9.《代碼整潔之道》(Clean Code: A Handbook of Agile Software Craftsmanship)
軟件質量,不只依賴於架構及項目管理,也與代碼質量相關。本書給出了一系列行之有效的整潔代碼操做實踐,並用來自現實項目的正、反兩面來例證,只要遵循這些規則,就能編寫出乾淨的代碼,從而有效提高代碼質量。
評語:該著做適合老程序員、技術經理。有網友驚呼「早幾年看到這本書,也許如今水平能再上一個臺階。」,所以有必定經驗和對編程認識到位的人,讀完此書將獲得更多。
10.《編程人生》(Coders at Work: Reflections on the Craft of Programming)
世界頂尖的程序員是怎麼走上編程道路的?他們編程工做創造和改變了人類歷史,在這一過程當中有什麼經驗和教訓?更有什麼獨到的見解?本書是一本訪談錄,記錄了當今最具我的魅力的15位軟件先驅的編程生涯,爲咱們講述了他們是怎麼學習編程的,以及在學習當中發現了什麼,有什麼見解?並對諸如應該如何設計軟件等困擾程序員的老話題談了本身的見解。
評語:適合全部程序員。看完這本書的讀者,或許職業眼界會更開闊,不會再作無謂的碼農勞動。
11.《編碼:隱匿在計算機軟硬件背後的語言》(CODE: The Hidden Language of Computer Hardware and Software)
《編碼:隱匿在計算機軟硬件背後的語言》是一本講述計算機工做原理的書,不過不要一聽「工做原理」等字眼就認爲本書是晦澀難懂的。做者用清晰明瞭的筆墨把複雜的理論寫的通俗易懂,閱讀的時候你不會感到枯燥和生硬,同時你也會得到對計算機工做原理深入的理解。
評語:不知網友有沒有看過《明朝那些事兒》這本書?如同這本書把歷史寫的如同小說同樣好看,《編碼:隱匿在計算機軟硬件背後的語言》這本書也作到了,讀完後你會以爲很好玩,同時也能學到真正的知識,加深對計算機科學的理解和認識。
最後:從計算機發明至今,隨着計算機硬件和軟件技術的發展,計算機的編程語言經歷了機器語言、彙編語言、面向過程的程序設計語言以及面向對象的程序設計語言階段。技術的飛速發展,使得開發者只有不斷學習,才能提升技術讓本身在編程的道路上走的更遠。以上推薦的11本書,但願讓各位開發者讀後受益不淺。