StackOverflow程序員推薦:每個程序員都應(yīng)讀的30本書

“如果能時光倒流梧兼,回到過去放吩,作為一個開發(fā)人員,你可以告訴自己在職業(yè)生涯初期應(yīng)該讀一本羽杰,你會選擇哪本書呢渡紫?我希望這個書單列表內(nèi)容豐富,可以涵蓋很多東西考赛√枧欤”

很多程序員響應(yīng),他們在推薦時也寫下自己的評語颜骤。以前就有國內(nèi)網(wǎng)友介紹這個程序員書單唧喉,不過都是推薦數(shù) Top 10的書。其實除了前10本之外复哆,推薦數(shù)前30左右的書籍都算經(jīng)典欣喧,伯樂在線整理編譯這個問答貼,同時摘譯部分推薦人的評語梯找。下面就按照各本書的推薦數(shù)排列唆阿。

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

推薦數(shù):1684

code complete 代碼大全

“優(yōu)秀的編程實踐的百科全書,《代碼大全》注重個人技術(shù)锈锤,其中所有東西加起來驯鳖,就是我們本能所說的“編寫整潔的代碼”。這本書有50頁在談?wù)摯a布局久免∏痴蓿” —— Joel Spolsky

對于新手來說,這本書中的觀念有點高階了阎姥。到你準備閱讀此書時记舆,你應(yīng)該已經(jīng)知道并實踐過書中99%的觀念。– esac

  1. 《程序員修煉之道》

推薦數(shù):1504

Pragmatic Programmer 程序員修煉之道

對于那些已經(jīng)學(xué)習(xí)過編程機制的程序員來說呼巴,這是一本卓越的書。或許他們還是在校生弛随,但對要自己做什么光督,還感覺不是很安全。就像草圖和架構(gòu)之間的差別。雖然你在學(xué)校課堂上學(xué)到的是畫圖,你也可以畫的很漂亮,但如果你覺得你不太知道從哪兒下手碘箍,如果某人要你獨自畫一個P2P的音樂交換網(wǎng)絡(luò)圖,那這本書就適合你了鲸郊》崃瘢—— Joel

  1. 《計算機程序的構(gòu)造和解釋》

推薦數(shù):916

Structure and Interpretation of Computer Programs 計算機程序的構(gòu)造和解釋

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

《代碼大全》多艇、《重構(gòu)》和《設(shè)計模式》這些經(jīng)典書會教給你高效的工作習(xí)慣和交易細節(jié)。其他像《人件集》像吻、《計算機編程心理學(xué)》和《人月神話》這些書會深入軟件開發(fā)的心理層面峻黍。其他書籍則處理算法。這些書都有自己所屬的位置拨匆。

然而《計算機程序的構(gòu)造和解釋》與這些不同姆涩。這是一本會啟發(fā)你的書,它會燃起你編寫出色程序的熱情惭每;它還將教會你認識并欣賞美骨饿;它會讓你有種敬畏,讓你難以抑制地渴望學(xué)習(xí)更多的東西台腥。其他書或許會讓你成為一位更出色的程序員宏赘,但此書將一定會讓你成為一名程序員。

同時黎侈,你將會學(xué)到其他東西察署,函數(shù)式編程(第三章)、惰性計算峻汉、元編程贴汪、虛擬機、解釋器和編譯器休吠。

一些人認為此書不適合新手扳埂。個人認為,雖然我并不完全認同要有一些編程經(jīng)驗才能讀此書瘤礁,但我還是一定推薦給初學(xué)者阳懂。畢竟這本書是寫給著名的6.001,是麻省理工學(xué)院的入門編程課程。此書或許需要多做努力(尤其你在做練習(xí)的時候希太,你也應(yīng)當如此)克饶,但這個價是對得起這本書的酝蜒。

你還不確信么誊辉?那就讀讀第一版的前言或序言。網(wǎng)上有免費的電子版亡脑。-Antti Syk?ri

  1. 《C程序設(shè)計語言》

推薦數(shù):774

The C Programming Language C程序設(shè)計語言

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

  1. 《算法導(dǎo)論》

推薦數(shù):671

Introduction to algorithms 算法導(dǎo)論

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

在我看來坑傅,代碼只是一個工具,并非精髓喷斋。開發(fā)軟件的主要部分是創(chuàng)建新算法或重新實現(xiàn)現(xiàn)有算法唁毒。其他部分則像重新組裝樂高磚塊或創(chuàng)建“管理”層。我依然夢想這樣的工作星爪,我的大部分時間(>50%)是在寫算法浆西,其他“管理”細節(jié)則留給其他人…… —— Ran Biron

  1. 《重構(gòu):改善既有代碼的設(shè)計》

推薦數(shù):617

Refactor 重構(gòu):改善既有代碼的設(shè)計

我想我不得不推薦《重構(gòu)》:改進現(xiàn)有代碼的設(shè)計⊥缣冢—— Martin

我必須承認近零,我最喜歡的編程語錄是出自這本書:任何一個傻瓜都能寫出計算機能理解的程序,而優(yōu)秀的程序員卻能寫出別人能讀得懂的程序抄肖【眯牛—— Martin Fowler

  1. 《設(shè)計模式》

推薦數(shù):617

Design Patterns 設(shè)計模式

就我而言,我認為四人幫編著的《設(shè)計模式》是一本極為有用的書漓摩。雖然此書并不像其他建議一樣有關(guān)“元”編程裙士,但它強調(diào)封裝諸如模式一類的優(yōu)秀編程技術(shù),因而鼓勵其他人提出新模式和反模式(antipatterns)幌甘,并運用于編程對話中潮售。—— Chris Jester-Young

  1. 《人月神話》

推薦數(shù):588

The Mythical Man-Month 人月神話

  1. 《計算機程序設(shè)計藝術(shù)》

推薦數(shù):542

The Art of Computer Programming 計算機程序設(shè)計藝術(shù)

這是高德納傾注心血寫的一本書锅风∷址蹋—— Peter Coulton

  1. 《編譯原理》(龍書)

推薦數(shù):462

Compilers: Principles, Techniques, and Tools 編譯原理:原理、技術(shù)與工具

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

  1. 《深入淺出設(shè)計模式》

推薦數(shù):445

我知道四人幫的《設(shè)計模式》是一本標準書,但倒不如先看看這部大部頭恒界,此書更為簡易睦刃。一旦你了解了解了基本原則,可以去看四人幫的那本圣經(jīng)了十酣。- Calanus

  1. 《哥德爾涩拙、艾舍爾、巴赫書:集異璧之大成》

推薦數(shù):437

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

  1. 《代碼整潔之道》

推薦數(shù):329

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

  1. 《Effective C++》和《More Effective C++》

推薦數(shù):297

在我職業(yè)生涯早期,Scott Meyer的《Effective C++》和后續(xù)的《More Effective C++》都對我的編程能力有著直接影響凛膏。正如當時的一位朋友所說杨名,這些書縮短你培養(yǎng)編程技能的過程,而其他人可能要花費數(shù)年猖毫。

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

  1. 《編程珠璣》

推薦數(shù):282

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

  1. 《修改代碼的藝術(shù)》by Michael Feathers

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

同意卒废。很多開發(fā)人員討論用干凈的石板來編寫軟件。但我想幾乎所有開發(fā)人員的某些時候是在吃其他開發(fā)人員的狗食宙地。– Bernard Dy

  1. 《編碼:隱匿在計算機軟硬件背后的語言》

我推薦Charles Petzold的《編碼》摔认。在這個充滿工具和IDE的年代,很多復(fù)雜度已經(jīng)從程序員那“抽取”走了宅粥,這本書一本開眼之作参袱。 – hemil

  1. 《禪與摩托車維修藝術(shù) / Zen and the Art of Motorcycle Maintenance》

對我影響最大的那本書是 Robert Pirsig 的《禪與摩托車維修藝術(shù)》。不管你做什么事粹胯,總是要力求完美蓖柔,徹底了解你手中的工具和任務(wù),更為重要的是风纠,要有樂趣(因為如果你做事有樂趣,一切將自發(fā)引向更好的結(jié)果)牢贸。 – akr

(編注:關(guān)于這本書竹观,也可以看看阮一峰的讀后感。)

  1. 《Peopleware / 人件集:人性化的軟件開發(fā)》

Demarco 和 Lister 表明潜索,軟件開發(fā)中的首要問題是人臭增,并非技術(shù)。他們的答案并不簡單竹习,只是令人難以置信的成功誊抛。第二版新增加了八章內(nèi)容。 – Eduardo Molteni

  1. 《Coders at Work / 編程人生》

一本非常有影響力的書整陌,可以從中學(xué)到一些業(yè)界頂級人士的經(jīng)驗拗窃,了解他們?nèi)绾嗡伎疾⒐ぷ鳌?– Jahanzeb Farooq

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

雖然這本書可能有點偏題随夸,但不管你信不信,這本書曾在計算機科學(xué)專業(yè)課程的閱讀列表之上震放。一個優(yōu)秀的角色模型宾毒,一本有關(guān)好奇心的優(yōu)秀書籍。 – mike511

  1. 《Effective Java 中文版》

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

  1. 《Patterns of Enterprise Application Architecture / 企業(yè)應(yīng)用架構(gòu)模式》

很奇怪墨礁,還沒人推薦 Martin Fowler 的《企業(yè)應(yīng)用架構(gòu)模式》- levi rosol

  1. 《The Little Schemer》和《The Seasoned Schemer》 nmiranda

這兩本是LISP的英文書幢竹,尚無中文版。美國東北大學(xué)網(wǎng)站上也有電子版饵溅。

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

本書是基于眾多商務(wù)案例咬荷,講述如何創(chuàng)建更好的冠句、高客戶忠誠度的軟件產(chǎn)品和基于軟件的高科技產(chǎn)品的書。本書列舉了很多真實可信的實際例子幸乒,說明目前在軟件產(chǎn)品和基于軟件的高科技產(chǎn)品中懦底,普遍存在著“難用”的問題。作者認為罕扎,“難用”問題是由這些產(chǎn)品中存在著的高度“認知摩擦”引起的聚唐,而產(chǎn)生這個問題的根源在于現(xiàn)今軟件開發(fā)過程中欠缺了一個為用戶利益著想的前期“交互設(shè)計”階段∏徽伲“難用”的產(chǎn)品不僅損害了用戶的利益杆查,最終也將導(dǎo)致企業(yè)的失敗。本書通過一些生動的實例臀蛛,讓人信服地講述了由作者倡導(dǎo)的“目標導(dǎo)向”交互設(shè)計方法在解決“難用”問題方面的有效性亲桦,證實了只有改變現(xiàn)有觀念,才能有效地在開發(fā)過程中引入交互設(shè)計浊仆,將產(chǎn)品的設(shè)計引向成功客峭。

本書雖然是一本面向商務(wù)人員而編寫的書,但也適合于所有參與軟件產(chǎn)品和基于軟件的高科技產(chǎn)品開發(fā)的專業(yè)人士抡柿,以及關(guān)心軟件行業(yè)和高科技行業(yè)現(xiàn)狀與發(fā)展的人士閱讀舔琅。

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

  1. 《Why’s (Poignant) Guide to Ruby 》

如果你不是程序員,閱讀此書可能會很有趣洲劣,但如果你已經(jīng)是個程序員备蚓,可能會有點乏味。

27.《Unix編程藝術(shù)》

It is useful regardless operating system you use. – J.F. Sebastian
不管你使用什么操作系統(tǒng)闪檬,這本書都很有用星著。 – J.F. Sebastian

  1. 《Practices of an Agile Developer / 高效程序員的45個習(xí)慣:敏捷開發(fā)修煉之道》

45個習(xí)慣,分為7個方面:工作態(tài)度粗悯、學(xué)習(xí)虚循、軟件交付、反饋样傍、編碼横缔、調(diào)試和協(xié)作。

每一個具體的習(xí)慣里衫哥,一開始提出一個謬論茎刚,然后展開分析,之后有正隊性地提出正確的做法撤逢,并設(shè)身處地地講出了正確做法給你個人的“切身感受”膛锭,最后列出幾條注意事項粮坞,幫助你修正自己的做法(“平衡的藝術(shù)”)。

  1. 《Test-Driven Development by Example. / 測試驅(qū)動開發(fā)》

前面已經(jīng)提到的很多書都啟發(fā)了我初狰,并影響了我莫杈,但這本書每位程序員都應(yīng)該讀。它向我展示了單元測試和TDD的重要性奢入,并讓我很快上手筝闹。 – Curro

我不關(guān)心你的代碼有多好或優(yōu)雅。如果你沒有測試腥光,你或許就如同沒有編寫代碼关顷。這本書得到的推薦數(shù)應(yīng)該更高些。人們討論編寫用戶喜歡的軟件武福,或既設(shè)計出色并健壯的高效代碼议双,但如果你的軟件有一堆bug,談?wù)撃切〇|西毫無意義艘儒。– Adam Gent

  1. 《Don’t Make Me Think / 點石成金:訪客至上的網(wǎng)頁設(shè)計秘笈》

取決于你所追求的目標聋伦。我喜歡《代碼大全》是因純編程,《點石成金》是一本有關(guān)UI設(shè)計的卓越書籍界睁。 – Justin Standard

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市兵拢,隨后出現(xiàn)的幾起案子翻斟,更是在濱河造成了極大的恐慌,老刑警劉巖说铃,帶你破解...
    沈念sama閱讀 219,589評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件访惜,死亡現(xiàn)場離奇詭異,居然都是意外死亡腻扇,警方通過查閱死者的電腦和手機债热,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評論 3 396
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來幼苛,“玉大人窒篱,你說我怎么就攤上這事〔把兀” “怎么了墙杯?”我有些...
    開封第一講書人閱讀 165,933評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長括荡。 經(jīng)常有香客問我高镐,道長,這世上最難降的妖魔是什么畸冲? 我笑而不...
    開封第一講書人閱讀 58,976評論 1 295
  • 正文 為了忘掉前任嫉髓,我火速辦了婚禮观腊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘算行。我一直安慰自己梧油,他們只是感情好,可當我...
    茶點故事閱讀 67,999評論 6 393
  • 文/花漫 我一把揭開白布纱意。 她就那樣靜靜地躺著婶溯,像睡著了一般。 火紅的嫁衣襯著肌膚如雪偷霉。 梳的紋絲不亂的頭發(fā)上迄委,一...
    開封第一講書人閱讀 51,775評論 1 307
  • 那天,我揣著相機與錄音类少,去河邊找鬼叙身。 笑死,一個胖子當著我的面吹牛硫狞,可吹牛的內(nèi)容都是我干的信轿。 我是一名探鬼主播,決...
    沈念sama閱讀 40,474評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼残吩,長吁一口氣:“原來是場噩夢啊……” “哼财忽!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起泣侮,我...
    開封第一講書人閱讀 39,359評論 0 276
  • 序言:老撾萬榮一對情侶失蹤即彪,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后活尊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體隶校,經(jīng)...
    沈念sama閱讀 45,854評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,007評論 3 338
  • 正文 我和宋清朗相戀三年蛹锰,在試婚紗的時候發(fā)現(xiàn)自己被綠了深胳。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,146評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡铜犬,死狀恐怖舞终,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情翎苫,我是刑警寧澤权埠,帶...
    沈念sama閱讀 35,826評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站煎谍,受9級特大地震影響攘蔽,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜呐粘,卻給世界環(huán)境...
    茶點故事閱讀 41,484評論 3 331
  • 文/蒙蒙 一满俗、第九天 我趴在偏房一處隱蔽的房頂上張望转捕。 院中可真熱鬧,春花似錦唆垃、人聲如沸五芝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,029評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽枢步。三九已至,卻和暖如春渐尿,著一層夾襖步出監(jiān)牢的瞬間醉途,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,153評論 1 272
  • 我被黑心中介騙來泰國打工砖茸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留隘擎,地道東北人。 一個月前我還...
    沈念sama閱讀 48,420評論 3 373
  • 正文 我出身青樓凉夯,卻偏偏與公主長得像货葬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子劲够,可洞房花燭夜當晚...
    茶點故事閱讀 45,107評論 2 356

推薦閱讀更多精彩內(nèi)容