有哪些書值得程序員看的?

哈利波特波娃兒


乾貨來了!

這個問題因人而異,即使是程序員也分很多種,這裡就Python相關推薦一些不錯的書籍!

不BB,show the code

先分享一張圖,這是Python之禪作者劉老師推薦的Python書籍清單,非常乾貨!

下面根據劉老師總結分享的進行介紹!

Python入門系列

有這幾本書非常不錯,值得新手選擇適合自己的學習!

  • 《Python編程:從入門到實踐》

我自己就是快速過了一遍這本書籍入的坑,非常適合新手!

豆瓣評分:9.1

推薦指數:❤️❤️❤️❤️❤️

本書是一本針對所有層次的Python 讀者而作的Python 入門書。全書分兩部分:第一部分介紹用Python 編程所必須瞭解的基本概念,包括matplotlib、NumPy 和Pygal 等強大的Python 庫和工具介紹,以及列表、字典、if 語句、類、文件與異常、代碼測試等內容;第二部分將理論付諸實踐,講解如何開發三個項目,包括簡單的Python 2D 遊戲開發如何利用數據生成交互式的信息圖,以及創建和定製簡單的Web 應用,並幫讀者解決常見編程問題和困惑。

  • 《Python編程快速上手》

豆瓣評分:9.0

推薦指數:❤️❤️❤️❤️

本書是一本面向實踐的Python編程實用指南。本書的目的,不僅是介紹Python語言的基礎知識,而且還通過項目實踐教會讀者如何應用這些知識和技能。本書的首部分介紹了基本Python編程概念,第二部分介紹了一些不同的任務,通過編寫Python程序,可以讓計算機自動完成它們。

進階系列

上邊兩本書還是相對比較基礎,進階的推薦如下兩本:

  • 《流暢的Python》

豆瓣評分:9.4

推薦指數:❤️❤️❤️❤️❤️

本書致力於幫助Python開發人員挖掘這門語言及相關程序庫的優秀特性,避免重複勞動,同時寫出簡潔、流暢、易讀、易維護,並且具有地道Python風格的代碼。本書尤其深入探討了Python語言的高級用法,涵蓋數據結構、Python風格的對象、並行與併發,以及元編程等不同的方面。本書適合中高級Python軟件開發人員閱讀參考。

  • 《Python Cookbook中文版》

豆瓣評分:9.3

推薦指數:❤️❤️❤️❤️❤️

本書覆蓋了Python應用中的很多常見問題,並提出了通用的解決方案。書中包含了大量實用的編程技巧和示例代碼,並在Python 3.3環境下進行了測試,可以很方便地應用到實際項目中去。此外,《Python Cookbook(第3版)中文版》還詳細講解了解決方案是如何工作的,以及為什麼能夠工作。非常適合具有一定編程基礎的Python程序員閱讀參考。

網絡爬蟲方向

這裡著重推薦靜覓博主崔慶才老師的《Python的網絡爬蟲開發實戰》,不過大家如果想上手,可以等等作者快要更新的第二版!

豆瓣評分:9.0

推薦指數:❤️❤️❤️❤️

數據分析挖掘

劉老師推薦的2本書口碑都不錯,我自己學習過第 2 本,強推《利用Python進行數據分析(第2版)》

豆瓣評分:8.2

推薦指數:❤️❤️❤️❤️

本書由Python pandas項目創始人Wes McKinney親筆撰寫,詳細介紹利用Python進行操作、處理、清洗和規整數據等方面的具體細節和基本要點。第2版針對Python 3.6進行全面修訂和更新,涵蓋新版的pandas、NumPy、IPython和Jupyter,並增加大量實際案例,可以幫助你高效解決一系列數據分析問題。

深度學習入門

這裡除了聖經花書,我想推薦《Python深度學習》這本書!

豆瓣評分:9.6

推薦指數:❤️❤️❤️❤️❤️

本書由Keras之父、現任Google人工智能研究員的弗朗索瓦•肖萊(François Chollet)執筆,詳盡介紹了用Python和Keras進行深度學習的探索實踐,涉及計算機視覺、自然語言處理、生成式模型等應用。書中包含30多個代碼示例,步驟講解詳細透徹。由於本書立足於人工智能的可達性和大眾化,讀者無須具備機器學習相關背景知識即可展開閱讀。在學習完本書後,讀者將具備搭建自己的深度學習環境、建立圖像識別模型、生成圖像和文字等能力。

寫在最後

讀書不是唯一的學習方式,但是他是成本最低的一種方式,希望上邊的一些書籍推薦對想入門Python的你有所幫助!

歡迎你和我一起來學習Python!感謝給一個👍🏻❤️


小詹學Python


1. 《代碼大全》(第二版)

程序員一生必讀的30本書 - 遠行的風 - 風的驛站

第2版的《代碼大全》是著名IT暢銷書作者史蒂夫·邁克康奈爾11年前的經典著作的全新演繹:第2版不是第一版的簡單修訂增補,而是完全進行了重寫;增加了很多與時俱進的內容。這也是一本完整的軟件構建手冊,涵蓋了軟件構建過程中的所有細節。它從軟件質量和編程思想等方面論述了軟件構建的各個問題,並詳細論述了緊跟潮流的新技術、高屋建瓴的觀點、通用的概念,還含有豐富而典型的程序示例。這本書中所論述的技術不僅填補了初級與高級編程技術之間的空白,而且也為程序員們提供了一個有關編程技巧的信息來源。這本書對經驗豐富的程序員、技術帶頭人、自學的程序員及幾乎不懂太多編程技巧的學生們都是大有裨益的。可以說,無論是什麼背景的讀者,閱讀這本書都有助於在更短的時間內、更容易地寫出更好的程序。

2. 《程序員修煉之道》

程序員一生必讀的30本書 - 遠行的風 - 風的驛站

作者: Andrew Hunt /David Thomas

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

3. 《計算機程序的構造和解釋》

程序員一生必讀的30本書 - 遠行的風 - 風的驛站

作者: Harold Abelson/ Gerald Jay Sussman / Julie Sussman

《計算機程序的構造和解釋(原書第2版)》1984年出版,成型於美國麻省理工學院(MIT)多年使用的一本教材,1996年修訂為第2版。在過去的二十多年裡,《計算機程序的構造和解釋(原書第2版)》對於計算機科學的教育計劃產生了深刻的影響。第2版中大部分重要程序設計系統都重新修改並做過測試,包括各種解釋器和編譯器。作者根據其後十餘年的教學實踐,還對其他許多細節做了相應的修改。

4. 《C程序設計語言》

程序員一生必讀的30本書 - 遠行的風 - 風的驛站

作者: (美)Brian W.Kernighan / (美)Dennis M. Ritchie

在計算機發展的歷史上,沒有哪一種程序設計語言像C語言這樣應用廣泛。本書原著即為C語言的設計者之一DennisM.Ritchie和著名計算機科學家BrianW.Kernighan合著的一本介紹C語言的權威經典著作。我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。原著第1版中介紹的C語言成為後來廣泛使用的C語言版本——標準C的基礎。人們熟知的“hello,World"程序就是由本書首次引入的,現在,這一程序已經成為眾多程序設計語言入門的第一課。

原著第2版根據1987年制定的ANSIC標準做了適當的修訂.引入了最新的語言形式,並增加了新的示例,通過簡潔的描述、典型的示例,作者全面、系統、準確地講述了C語言的各個特性以及程序設計的基本方法。對於計算機從業人員來說,《C程序設計語言》是一本必讀的程序設計語言方面的參考書。

5. 《算法導論》

程序員一生必讀的30本書 - 遠行的風 - 風的驛站

作者: [美] ThomasH.Cormen / Charles E.Leiserson / Ronald L.Rivest / Clifford Stein

這本書深入淺出,全面地介紹了計算機算法。對每一個算法的分析既易於理解又十分有趣,並保持了數學嚴謹性。本書的設計目標全面,適用於多種用途。涵蓋的內容有:算法在計算中的作用,概率分析和隨機算法的介紹。書中專門討論了線性規劃,介紹了動態規劃的兩個應用,隨機化和線性規劃技術的近似算法等,還有有關遞歸求解、快速排序中用到的劃分方法與期望線性時間順序統計算法,以及對貪心算法元素的討論。此書還介紹了對強連通子圖算法正確性的證明,對哈密頓迴路和子集求和問題的NP完全性的證明等內容。全書提供了900多個練習題和思考題以及敘述較為詳細的實例研究。

6. 《重構:改善既有代碼的設計》

程序員一生必讀的30本書 - 遠行的風 - 風的驛站

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

本書凝聚了軟件開發社區專家多年摸索而獲得的寶貴經驗,擁有不因時光流逝而磨滅的價值。今天,無論是重構本身,業界對重構的理解,還是開發工具對重構的支持力度,都與本書最初出版時不可同日




簡通激光小楊


程序員需要掌握很多技術,也需要多看書,多積累知識,才能更好的發展,比如,Java可以看以下:

1. Java核心技術·卷 I

2. Java性能權威指南

3. 實戰Java高併發程序設計

4. Java 8實戰

5. Java併發編程實戰

6. Thinking in Java

7. Effective Java中文版

8. 深入理解Java虛擬機(第3版)

9. 數據結構與算法分析

10. MySQL必知必會

11. 高性能MySQL

12. ....



Ccww之架構師


下面就按照各本書的推薦數排列。

1、《代碼大全》 史蒂夫·邁克康奈爾

“優秀的編程實踐的百科全書,《代碼大全》注重個人技術,其中所有東西加起來, 就是我們本能所說的“編寫整潔的代碼”。這本書有50頁在談論代碼佈局。” —— Joel Spolsky

對於新手來說,這本書中的觀念有點高階了。到你準備閱讀此書時,你應該已經知道並實踐過書中99%的觀念。– esac

Steve McConnell的原作《代碼大全》(第1版)是公認的關於編程的最佳實踐指南之一, 在過去的十多年間,本書一直在幫助開發人員編寫更好的軟件。

現在,作者將這本經典著作全新演繹,融入了最前沿的實踐技術,加入了上百個嶄新的代碼示例, 充分展示了軟件構建的藝術性和科學性。 McConnell彙集了來自研究機構、學術界以及業界日常實踐的主要知識, 把最高效的技術和最重要的原理交織融會為這本既清晰又實用的指南。

無論您的經驗水平如何,也不管您在怎樣的開發環境中工作,也無論項目是大是小, 本書都將激發您的思維並幫助您構建高品質的代碼。

《代碼大全(第2版))》做了全面的更新,增加了很多與時俱進的內容,包括對新語言、新的開發過程與方法論的討論等等。

2、《程序員修煉之道》

對於那些已經學習過編程機制的程序員來說,這是一本卓越的書。 或許他們還是在校生,但對要自己做什麼,還感覺不是很安全。

就像草圖和架構之間的差別。雖然你在學校課堂上學到的是畫圖,你也可以畫的很漂亮, 但如果你覺得你不太知道從哪兒下手,如果某人要你獨自畫一個P2P的音樂交換網絡圖,那這本書就適合你了。—— Joel

《程序員修煉之道:從小工到專家》內容簡介:《程序員修煉之道》由一系列獨立的部分組成, 涵蓋的主題從個人責任、職業發展,知道用於使代碼保持靈活、並且易於改編和複用的各種架構技術, 利用許多富有娛樂性的奇聞軼事、有思想性的例子及有趣的類比, 全面闡釋了軟件開發的許多不同方面的最佳實踐和重大陷阱。

無論你是初學者,是有經驗的程序員,還是軟件項目經理,《程序員修煉之道:從小工到專家》都適合你閱讀。

3、《計算機程序的構造和解釋》

就個人而言,這本書目前為止對我影響醉倒的一本編程書。

《代碼大全》、《重構》和《設計模式》這些經典書會教給你高效的工作習慣和交易細節。 其他像《人件集》、《計算機編程心理學》和《人月神話》這些書會深入軟件開發的心理層面。 其他書籍則處理算法。這些書都有自己所屬的位置。

然而《計算機程序的構造和解釋》與這些不同。 這是一本會啟發你的書,它會燃起你編寫出色程序的熱情; 它還將教會你認識並欣賞美; 它會讓你有種敬畏,讓你難以抑制地渴望學習更多的東西。

其他書或許會讓你成為一位更出色的程序員,但此書將一定會讓你成為一名程序員。

同時,你將會學到其他東西,函數式編程(第三章)、惰性計算、元編程、虛擬機、解釋器和編譯器。

一些人認為此書不適合新手。 個人認為,雖然我並不完全認同要有一些編程經驗才能讀此書,但我還是一定推薦給初學者。 畢竟這本書是寫給著名的6.001,是麻省理工學院的入門編程課程。 此書或許需要多做努力(尤其你在做練習的時候,你也應當如此),但這個價是對得起這本書的。

4、《C程序設計語言》

這本書簡潔易讀,會教給你三件事:C 編程語言;如何像程序員一樣思考;底層計算模型。 (這對理解“底層”非常重要)—— Nathan

《C程序設計語言》(第2版新版)講述深入淺出,配合典型例證,通俗易懂,實用性強, 適合作為大專院校計算機專業或非計算機專業的C語言教材,也可以作為從事計算機相關軟硬件開發的技術人員的參考書。

《C程序設計語言》(第2版新版)原著即為C語言的設計者之一Dennis M.Ritchie和著名的計算機科學家Brian W.Kernighan合著的 一本介紹C語言的權威經典著作。 我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。 原著第1版中介紹的C語言成為後來廣泛使用的C語言版本——標準C的基礎。

人們熟知的“hello,world”程序就是由本書首次引入的,現在,這一程序已經成為所有程序設計語言入門的第一課。

5、《算法導論》

《代碼大全》教你如何正確編程; 《人月神話》教你如何正確管理; 《設計模式》教你如何正確設計……

在我看來,代碼只是一個工具,並非精髓。 開發軟件的主要部分是創建新算法或重新實現現有算法。 其他部分則像重新組裝樂高磚塊或創建“管理”層。

我依然夢想這樣的工作,我的大部分時間(>50%)是在寫算法,其他“管理”細節則留給其他人…… —— Ran Biron

經典的算法書,被亞馬遜網,《程序員》等評選為2006年最受讀者喜愛的十大IT圖書之一。算法領域的標準教材,全球多所知名大學選用MIT名師聯手鑄就,被譽為“計算機算法的聖經”編寫上採用了“五個一”,即一章介紹一個算法、一種設計技術、一個應用領域和一個相關話題。

6、《重構:改善既有代碼的設計》

《重構:改善既有代碼的設計》清晰地揭示了重構的過程,解釋了重構的原理和最佳實踐方式, 並給出了何時以及何地應該開始挖掘代碼以求改善。 書中給出了70多個可行的重構,每個重構都介紹了一種經過驗證的代碼變換手法的動機和技術。

《重構:改善既有代碼的設計》提出的重構準則將幫助你一次一小步地修改你的代碼,從而減少了開發過程中的風險。

《重構:改善既有代碼的設計》適合軟件開發人員、項目管理人員等閱讀, 也可作為高等院校計算機及相關專業師生的參考讀物。

我想我不得不推薦《重構》:改進現有代碼的設計。—— Martin

我必須承認,我最喜歡的編程語錄是出自這本書:任何一個傻瓜都能寫出計算機能理解的程序, 而優秀的程序員卻能寫出別人能讀得懂的程序。—— Martin Fowler

7、《設計模式》

自1995年出版以來,本書一直名列Amazon和各大書店銷售榜前列。 近10年後,本書仍是Addison-Wesley公司2003年最暢銷的圖書之一。 中文版銷售逾4萬冊。

就我而言,我認為四人幫編著的《設計模式》是一本極為有用的書。 雖然此書並不像其他建議一樣有關“元”編程,但它強調封裝諸如模式一類的優秀編程技術, 因而鼓勵其他人提出新模式和反模式(antipatterns),並運用於編程對話中。—— Chris Jester-Young

8、《人月神話》

在軟件領域,很少能有像《人月神話》一樣具有深遠影響力並且暢銷不衰的著作。

Brooks博士為人們管理複雜項目提供了最具洞察力的見解。 既有很多發人深省的觀點,又有大量軟件工程的實踐。 本書內容來自Brooks博士在IBM公司System/360家族和OS/360中的項目管理經驗。

該書英文原版一經面世,即引起業內人士的強烈反響,後又譯為德、法、日、俄中等多種語言,全球銷量數百萬冊。 確立了其在行業內的經典地位。

9、《計算機程序設計藝術》

《計算機程序設計藝術》系列著作對計算機領域產生了深遠的影響。 這一系列堪稱一項浩大的工程,自1962年開始編寫,計劃出版7卷,目前已經出版了4卷。

《美國科學家》雜誌曾將這套書與愛因斯坦的《相對論》等書並列稱為20世紀最重要的12本物理學著作。 目前Knuth正將畢生精力投入到這部史詩性著作的撰寫中。

這是高德納傾注心血寫的一本書。—— Peter Coulton

10、《編譯原理》(龍書)

我很奇怪,居然沒人提到龍書。(或許已有推薦,我沒有看到)。 我從沒忘過此書的第一版封面。 此書讓我知道了編譯器是多麼地神奇絕妙。- DB

11、《深入淺出設計模式》

強大的寫作陣容。

《Head First設計模式》(中文版) 作者Eric Freeman;ElElisabeth Freeman是作家、講師和技術顧問。Eric擁有耶魯大學的計算機科學博士學位,E1isabath擁有耶魯大學的計算機科學碩士學位。Kathy Sierra(javaranch.com的創始人)FHBert Bates是暢銷的HeadFirst系列書籍的創立者,也是Sun公司Java開發員認證考試的開發者。

本書的產品設計應用神經生物學、認知科學,以及學習理論,這使得這本書能夠將這些知識深深地印在你的腦海裡, 不容易被遺忘。

本書的編寫方式採用引導式教學,不直接告訴你該怎麼做,而是利用故事當作引子,帶領讀者思考並想辦法解決問題。 解決問題的過程中又會產生一些新的問題,再繼續思考、繼續解決問題,這樣可以加深體會。

作者以大量的生活化故事當背景,例如第1章是鴨子,第2章是氣象站,第3章是咖啡店, 書中搭配大量的插圖(幾乎每一頁都有圖),所以閱讀起來生動有趣,不會感覺到昏昏欲睡。

作者還利用歪歪斜斜的手寫字體,增加“現場感”。 精心設計許多爆笑的對白,讓學習過程不會太枯燥。 還有模式告白節目,將設計模式擬人化成節目來賓,暢談其內在的一切。 每一章都有數目不等的測驗題。 每章最後有一頁要點整理,這也是精華所在,我都是利用這一頁做複習。

我知道四人幫的《設計模式》是一本標準書,但倒不如先看看這部大部頭,此書更為簡易。 一旦你瞭解瞭解了基本原則,可以去看四人幫的那本聖經了。- Calanus

12、《哥德爾、艾舍爾、巴赫書:集異璧之大成》

如果下昂真正深入閱讀,我推薦道格拉斯·侯世達(Douglas Hofstadter)的《哥德爾、艾舍爾、巴赫書》。 他極為深入研究了程序員每日都要面對的問題:遞歸、驗證、證明和布爾代數。 這是一本很出色的讀物,難度不大,偶爾有挑戰,一旦你要鏖戰到底,將是非常值得的。 – Jonik

13、《代碼整潔之道》

細節之中自有天地,整潔成就卓越代碼

儘管糟糕的代碼也能運行,但如果代碼不整潔,會使整個開發團隊泥足深陷, 寫得不好的代碼每年都要耗費難以計數的時間和資源。 然而這種情況並非無法避免。

著名軟件專家RoberfC.Marlin在《代碼整潔之道》中為你呈現出了革命性的視野。 Martin攜同ObjectMetltor公司的同事,從他們有關整潔代碼的最佳敏捷實踐中提煉出軟件技藝的價值觀, 以饗讀者,讓你成為更優秀的程序員——只要你著手研讀《代碼整潔之道》。

閱讀《代碼整潔之道》需要你做些什麼呢?你將閱讀代碼——大量代碼。 《代碼整潔之道》促使你思考代碼中何謂正確,何謂錯誤。 更重要的是,《代碼整潔之道》將促使你重新評估自己的專業價值觀,以及對自己技藝的承諾。

從《代碼整潔之道》中可以學到:

好代碼和糟糕的代碼之間的區別;如何編寫好代碼,如何將糟糕的代碼轉化為好代碼;如何創建好名稱、好函數、好對象和好類;如何格式化代碼以實現其可讀性的最大化;如何在不妨礙代碼邏輯的前提下充分實現錯誤處理;如何進行單元測試和測試驅動開發。

雖然《代碼整潔之道》和《代碼大全》有很多共同之處,但它有更為簡潔更為實際的清晰例子。 – Craig P. Motlin

14、《Effective C++》和《More Effective C++》

在我職業生涯早期,Scott Meyer的《Effective C++》和後續的《More Effective C++》都對我的編程能力有著直接影響。 正如當時的一位朋友所說,這些書縮短你培養編程技能的過程,而其他人可能要花費數年。

去年對我影響最大的一本書是《大教堂與市集》,該書教會我很有關開源開發過程如何運作,和如何處理我代碼中的Bug。 – John Channing

15、《編程珠璣》

多年以來,當程序員們推選出最心愛的計算機圖書時,《編程珠璣》總是位列前列。 正如自然界裡珍珠出自細沙對牡蠣的磨礪,計算機科學大師Jon Bentley以其獨有的洞察力和創造力, 從磨礪程序員的實際問題中凝結出一篇篇不朽的編程“珠璣”, 成為世界計算機界名刊《ACM通訊》歷史上最受歡迎的專欄, 最終結集為兩部不朽的計算機科學經典名著,影響和激勵著一代又一代程序員和計算機科學工作者。

本書為第一卷,主要討論計算機科學中最本質的問題:如何正確選擇和高效地實現算法。

儘管我不得不羞愧地承認,書中一半的東西我都沒有理解,但我真的推薦《編程珠璣》,書中有些令人驚奇的東西。 – Matt Warren

16、《修改代碼的藝術》by Michael Feathers

本書是繼《重構》和《重構與模式》之後探討修改代碼技術的又一里程碑式的著作, 而且從涵蓋面和深度上都超過了前兩部經典。 書中不僅講述面嚮對象語言(Java、C#和C++)代碼,也有專章討論C這樣的過程式語言。

作者將理解、測試和修改代碼的原理、技術和最新工具(自動化重構工具、單元測試框架、仿對象、集成測試框架等), 與解依賴技術和大量開發和設計優秀代碼的原則、最佳實踐相結合,許多內容非常深入,而且常常發前人所未發。

書中處處體現出作者獨到的洞察力,以及多年開發和指導軟件項目所積累的豐富經驗和深厚功力。 通過這部集大成之作,你不僅能掌握最頂尖的修改代碼技術,還可以大大提高對代碼和軟件開發的領悟力。

我認為沒有任何一本書能向這本書一樣影響了我的編程觀點。 它明確地告訴你如何處理其他人的代碼,含蓄地教會你避免哪些(以及為什麼要避免)。- Wolfbyte

同意。很多開發人員討論用乾淨的石板來編寫軟件。 但我想幾乎所有開發人員的某些時候是在吃其他開發人員的狗食。– Bernard Dy

17、《編碼:隱匿在計算機軟硬件背後的語言》

這是一本講述計算機工作原理的書。

不過,你千萬不要因為“工作原理”之類的字眼就武斷地認為,它是晦澀而難懂的。 作者用豐富的想象和清晰的筆墨將看似繁雜的理論闡述得通俗易懂,你絲毫不會感到枯燥和生硬。 更重要的是,你會因此而獲得對計算機工作原理較深刻的理解。 這種理解不是抽象層面上的,而是具有一定深度的,這種深度甚至不遜於“電氣工程師”和“程序員”的理解。

不管你是計算機高手,還是對這個神奇的機器充滿敬畏之心的菜鳥, 都不妨翻閱一下《編碼:隱匿在計算機軟硬件背後的語言》,讀一讀大師的經典作品,必然會有收穫。

我推薦Charles Petzold的《編碼》。 在這個充滿工具和IDE的年代,很多複雜度已經從程序員那“抽取”走了,這本書一本開眼之作。 – hemil

18、《禪與摩托車維修藝術 / Zen and the Art of Motorcycle Maintenance》

對我影響最大的那本書是 Robert Pirsig 的《禪與摩托車維修藝術》。 不管你做什麼事,總是要力求完美,徹底瞭解你手中的工具和任務,更為重要的是, 要有樂趣(因為如果你做事有樂趣,一切將自發引向更好的結果)。 – akr

19、《Peopleware / 人件集:人性化的軟件開發》

Demarco 和 Lister 表明,軟件開發中的首要問題是人,並非技術。 他們的答案並不簡單,只是令人難以置信的成功。 第二版新增加了八章內容。 – Eduardo Molteni

20、《Coders at Work / 編程人生》

這是一本訪談筆錄,記錄了當今最具個人魅力的15位軟件先驅的編程生涯。 包括DonaldKnuth、Jamie Zawinski、Joshua Bloch、Ken Thompson等在內的業界傳奇人物,為我們講述了 他們是怎麼學習編程的,在編程過程中發現了什麼以及他們對未來的看法, 並對諸如應該如何設計軟件等長久以來一直困擾很多程序員的問題談了自己的觀點。

一本非常有影響力的書,可以從中學到一些業界頂級人士的經驗,瞭解他們如何思考並工作。 – Jahanzeb Farooq

21、《Surely You’re Joking, Mr. Feynman! / 別鬧了,費曼先生!》

雖然這本書可能有點偏題,但不管你信不信,這本書曾在計算機科學專業課程的閱讀列表之上。 一個優秀的角色模型,一本有關好奇心的優秀書籍。 – mike511

22、《Effective Java 中文版》

此書第二版教你如何編寫漂亮並高效的代碼,雖然這是一本Java書,但其中有很多跨語言的理念。 – Marcio Aguiar

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

很奇怪,還沒人推薦 Martin Fowler 的《企業應用架構模式》- levi rosol

24、《The Little Schemer》和《The Seasoned Schemer》 nmiranda

這兩本是LISP的英文書,尚無中文版。 美國東北大學網站上也有電子版。

25、《交互設計之路》英文名:《The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity》該書作者:Alan Cooper,人稱Visual Basic之父,交互設計之父。

本書是基於眾多商務案例,講述如何創建更好的、高客戶忠誠度的軟件產品和基於軟件的高科技產品的書。 本書列舉了很多真實可信的實際例子,說明目前在軟件產品和基於軟件的高科技產品中,普遍存在著“難用”的問題。

作者認為,“難用”問題是由這些產品中存在著的高度“認知摩擦”引起的, 而產生這個問題的根源在於現今軟件開發過程中欠缺了一個為用戶利益著想的前期“交互設計”階段。 “難用”的產品不僅損害了用戶的利益,最終也將導致企業的失敗。

本書通過一些生動的實例,讓人信服地講述了由作者倡導的“目標導向”交互設計方法在解決“難用”問題方面的有效性, 證實了只有改變現有觀念,才能有效地在開發過程中引入交互設計,將產品的設計引向成功。

本書雖然是一本面向商務人員而編寫的書,但也適合於所有參與軟件產品和基於軟件的高科技產品開發的專業人士, 以及關心軟件行業和高科技行業現狀與發展的人士閱讀。

他還有另一本中文版著作:《About Face 3 交互設計精髓》

26、《Why’s (Poignant) Guide to Ruby 》

如果你不是程序員,閱讀此書可能會很有趣,但如果你已經是個程序員,可能會有點乏味。

27、《Unix編程藝術》

It is useful regardless operating system you use. – J.F. Sebastian

不管你使用什麼操作系統,這本書都很有用。 – J.F. Sebastian

28、《高效程序員的45個習慣:敏捷開發修煉之道》

45個習慣,分為7個方面:工作態度、學習、軟件交付、反饋、編碼、調試和協作。

每一個具體的習慣裡,一開始提出一個謬論,然後展開分析,之後有正隊性地提出正確的做法,並設身處地地講出了正確做法給你個人的“切身感受”,最後列出幾條注意事項,幫助你修正自己的做法(“平衡的藝術”)。

29、《測試驅動開發》

前面已經提到的很多書都啟發了我,並影響了我,但這本書每位程序員都應該讀。 它向我展示了單元測試和TDD的重要性,並讓我很快上手。 – Curro

我不關心你的代碼有多好或優雅。 如果你沒有測試,你或許就如同沒有編寫代碼。 這本書得到的推薦數應該更高些。 人們討論編寫用戶喜歡的軟件,或既設計出色並健壯的高效代碼,但如果你的軟件有一堆bug,談論那些東西毫無意義。– Adam Gent

30、《點石成金:訪客至上的網頁設計秘笈》

可用性設計是Web設計中最重要也是難度最大的一項任務。 《點石成金-訪客至上的網頁設計秘笈(原書第二版)》作者根據多年從業的經驗,剖析用戶的心理, 在用戶使用的模式、為掃描進行設計、導航設計、主頁佈局、可用性測試等方面提出了許多獨特的觀點, 並給出了大量簡單、易行的可用性設計的建議。

本書短小精煉,語言輕鬆詼諧,書中穿插大量色彩豐富的屏幕截圖、趣味叢生的卡通插圖以及包含大量信息的圖表, 使枯燥的設計原理變得平易近人。

本書適合從事Web設計和Web開發的技術人員閱讀,特別適合為如何留住訪問者而苦惱的網站/網頁設計人員閱讀。 這是一本關於Web設計原則而不是Web設計技術的書。

本書作者是Web設計專家,具有豐富的實踐經驗。 他用幽默的語言為你揭示Web設計中重要但卻容易被忽視的問題,只需幾個小時, 你便能對照書中講授的設計原則找到網站設計的癥結所在,令你的網站煥然一新。

取決於你所追求的目標。 我喜歡《代碼大全》是因純編程,《點石成金》是一本有關UI設計的卓越書籍。 – Justin Standard

小編給大家謀取了一點小福利,最近會有一個送書活動,多讀書多學習準沒錯兒~不過還要大家的配合哦,看大家的熱情程度,分享自己認為不錯的書籍,簡單的說出理由,或者自己希望獲得的一本書籍,小編會從中選擇最受大家歡迎的書籍在即將推出的送書活動中進行贈送。


小小邁克


《程序員的進階之路》,可以看看


Python進階學習交流


頸椎病康復指南


分享到:


相關文章: