Categories
程式開發

有史以來最受歡迎的25本編程書籍


推特上一位名為Pierre de Wulf的網友突發奇想,有史以來最受歡迎的編程書籍到底是哪些?為了找到程序員們最為推崇的那些編程書籍,他使用Python編寫了腳本,拉取了大量的相關數據,最終得出了這25本技術好書。以下是推薦結果。

程序員修煉之道:從小工到專家

作者:David Thomas & Andrew Hunt,67%推薦度

有史以來最受歡迎的25本編程書籍 1

《程序員修煉之道》由一系列的獨立部分組成,涵蓋的主題從個人責任、職業發展,直到用於使代碼保持靈活、並且易於改編和復用的各種架構技術。利用許多富有娛樂性的奇聞軼事、有思想性的例子以及有趣的類比,全面闡釋了軟件開發的許多不同方面的最佳實踐和重大陷阱。無論你是初學者,是有經驗的程序員,還是軟件項目經理,本書都適合你閱讀。

代碼整潔之道

作者:Robert C. Martin,66%推薦度

有史以來最受歡迎的25本編程書籍 2

軟件質量,不但依賴於架構及項目管理,而且與代碼質量緊密相關。這一點,無論是敏捷開發流派還是傳統開發流派,都不得不承認。本書提出一種觀念:代碼質量與其整潔度成正比。乾淨的代碼,既在質量上較為可靠,也為後期維護、升級奠定了良好基礎。作為編程領域的佼佼者,本書作者給出了一系列行之有效的整潔代碼操作實踐。這些實踐在本書中體現為一條條規則(或稱“啟示”),並輔以來自現實項目的正、反兩面的範例。只要遵循這些規則,就能編寫出乾淨的代碼,從而有效提升代碼質量。

代碼大全(第2版)

作者:Steve McConnell,42%推薦度

有史以來最受歡迎的25本編程書籍 3

這是一本完整的軟件構建手冊,涵蓋了軟件構建過程中的所有細節。它從軟件質量和編程思想等方面論述了軟件構建的各個問題,並詳細論述了緊跟潮流的新技術、高屋建瓴的觀點、通用的概念,還含有豐富而典型的程序示例。這本書中所論述的技術不僅填補了初級與高級編程技術之間的空白,而且也為程序員們提供了一個有關編程技巧的信息來源。這本書對經驗豐富的程序員、技術帶頭人、自學的程序員及幾乎不懂太多編程技巧的學生們都是大有裨益的。可以說,無論是什麼背景的讀者,閱讀這本書都有助於在更短的時間內、更容易地寫出更好的程序。

重構:改善既有代碼的設計

作者:Martin Fowler,35%推薦度

有史以來最受歡迎的25本編程書籍 4

重構,一言以蔽之,就是在不改變外部行為的前提下,有條不紊地改善代碼。多年前,正是本書原版的出版,使重構終於從編程高手們的小圈子走出,成為眾多普通程序員日常開發工作中不可或缺的一部分。本書也因此成為與《設計模式》齊名的經典著作,被譯為中、德、俄、日等眾多語言,在世界範圍內暢銷不衰。

深入淺出設計模式

作者:Eric Freeman / Bert Bates / Kathy Sierra / Elisabeth Robson,29.4%推薦度

有史以來最受歡迎的25本編程書籍 5

《深入淺出設計模式》(影印版)的編寫運用許多最新的研究,包括神經生物學、認知科學以及學習理論,這使得《深入淺出設計模式》(影印版)能夠將這些設計模式深深地烙印在你的腦海中,不容易被遺忘。你將會更擅長於解決軟件設計中的問題,並能夠和你的團隊成員用模式的語言來更好地溝通。

人月神話

作者:Frederick P. Brooks Jr,27.9%推薦度

有史以來最受歡迎的25本編程書籍 6

作者為人們管理複雜項目提供了頗具洞察力的見解,既有很多發人深省的觀點,也有大量的軟件工程實踐。書中的內容來自布魯克斯在IBM公司System 360家族和OS 360中的項目管理經驗。初版的20年後,布魯克斯重新審視了他原先的觀點,增加了一些新的想法和建議。新增加的章節包括:原著中一些核心觀點的精華;在經過了一個時代以後,Brooks博士對原先觀點新的認識;1986年的經典文章《沒有銀彈》;對1986年所下論斷(在10年內不會出現銀彈)現在的認識。

程序員的職業素養

作者:Robert Martin,27.9%推薦度

有史以來最受歡迎的25本編程書籍 7

本書是編程大師Bob 大叔40 餘年編程生涯的心得體會, 講解成為真正專業的程序員需要什麼樣的態度、原則,需要採取什麼樣的行動。作者以自己以及身邊的同事走過的彎路、犯過的錯誤為例,意在為後來人引路,助其職業生涯邁上更高台階。本書適合所有程序員,也可供所有想成為具備職業素養的職場人士參考。

修改代碼的藝術

作者:Michael Feathers,26.4%推薦度

有史以來最受歡迎的25本編程書籍 8

本書是繼《重構》和《重構與模式》之後探討修改代碼技術的又一里程碑式的著作,書中不僅講述面向對象語言(Java、C#和C++)代碼,也有專章討論C這樣的過程式語言。作者將理解、測試和修改代碼的原理、技術和最新工具(自動化重構工具、單元測試框架、仿對象、集成測試框架等),與解依賴技術和大量開發和設計優秀代碼的原則、最佳實踐相結合,許多內容非常深入,而且常常發前人所未發。書中處處體現出作者獨到的洞察力,以及多年開發和指導軟件項目所積累的豐富經驗和深厚功力。通過這部集大成之作,你不僅能掌握最頂尖的修改代碼技術,還可以大大提高對代碼和軟件開發的領悟力。

設計模式:可複用面向對象軟件的基礎

作者:Erich Gamma / Richard Helm / Ralph Johnson / John Vlissides,25%推薦度

有史以來最受歡迎的25本編程書籍 9

這本書結合設計實作例從面向對象的設計中精選出23個設計模式,總結了面向對象設計中最有價值的經驗,並且用簡潔可複用的形式表達出來。書中分類描述了一組設計良好、表達清楚的軟件設計模式,這些模式在實用環境下特別有用。此書適合大學計算機專業的學生、研究生及相關人員參考。書中涉及的設計模式並不描述新的或未經證實的設計,只收錄了那些在不同系統中多次使用過的成功設計。

程序員面試金典

作者:Gayle Laakmann McDowell,22%推薦度

有史以來最受歡迎的25本編程書籍 10

本書是原谷歌資深面試官的經驗之作,層層緊扣程序員面試的每一個環節,全面而詳盡地介紹了程序員應當如何應對面試,才能在面試中脫穎而出。第1~7 章主要涉及面試流程解析、面試官的幕後決策及可能提出的問題、面試前的準備工作、對面試結果的處理等內容;第8~9 章從數據結構、概念與算法、知識類問題和附加面試題4 個方面,為讀者呈現了出自微軟、蘋果、谷歌等多家知名公司的150 道編程面試題,並針對每一道面試題目,分別給出了詳細的解決方案。

11-25名書籍詳情

  • 軟技能 : 代碼之外的生存指南,22%推薦度
    Soft Skills by John Sonmez

  • 點石成金 : 訪客至上的網頁設計秘笈,19.1%推薦度
    Don’t Make Me Think by Steve Krug

  • 編碼,19.1%推薦度
    Code by Charles Petzold

  • 算法導論,17.6%推薦度
    Introduction to Algorithms by Thomas H. Cormen / Charles E. Leiserson / Ronald L. Rivest / Clifford Stein

  • 人件,17.6%推薦度
    Peopleware by Tom DeMarco & Tim Lister

  • 編程珠璣,16.1%推薦度
    Programming Pearls by Jon Bentley

  • 企業應用架構模式,14.7%推薦度
    Patterns of Enterprise Application Architecture by Martin Fowler

  • 計算機程序的構造和解釋,13.2%推薦度
    Structure and Interpretation of Computer Programs by Harold Abelson / Gerald Jay Sussman / Julie Sussman

  • 計算機程序設計藝術,10.2%推薦度
    The Art of Computer Programming

  • 領域驅動設計 : 軟件核心複雜性應對之道,10.2%推薦度
    Domain-Driven Design by Eric Evans

  • 編程人生 : 15位軟件先驅訪談錄,推薦度10.2%
    Coders at Work by Peter Seibel

  • 快速軟件開發 : 有效控制與完成進度計劃,推薦度8.8%
    Rapid Development by Steve McConnell

  • The Self-Taught Programmer,8.8%推薦度(暫無中文版)

  • 算法,8.8%推薦度
    Algorithms by Robert Sedgewick & Kevin Wayne

  • 持續交付 : 發布可靠軟件的系統方法,8.8%推薦度
    Continuous Delivery by Jez Humble & David Farley

以上的編程經典,你看過哪幾本?還有哪些中文作者的編程書籍是你強烈推薦的?

歡迎留言一起討論!