1. 《程式碼大全》 史蒂夫·邁克康奈爾
推薦數:1684
“優秀的程式設計實踐的百科全書,《程式碼大全》注重個人技術,其中所有東西加起來,就是我們本能所說的“編寫整潔的程式碼”。這本書有50頁在談論程式碼佈局。” —— Joel Spolsky
對於新手來說,這本書中的觀念有點高階了。到你準備閱讀此書時,你應該已經知道並實踐過書中99%的觀念。– esac
2. 《程式設計師修煉之道》
推薦數:1504
對於那些已經學習過程式設計機制的程式設計師來說,這是一本卓越的書。或許他們還是在校生,但對要自己做什麼,還感覺不是很安全。就像草圖和架構之間的差別。雖然你在學校課堂上學到的是畫圖,你也可以畫的很漂亮,但如果你覺得你不太知道從哪兒下手,如果某人要你獨自畫一個P2P的音樂交換網路圖,那這本書就適合你了。—— Joel
3. 《計算機程式的構造和解釋》
推薦數:916
就個人而言,這本書目前為止對我影響醉倒的一本程式設計書。
《程式碼大全》、《重構》和《設計模式》這些經典書會教給你高效的工作習慣和交易細節。其他像《人件集》、《計算機程式設計心理學》和《人月神話》這些書會深入軟體開發的心理層面。其他書籍則處理演算法。這些書都有自己所屬的位置。
然而《計算機程式的構造和解釋》與這些不同。這是一本會啟發你的書,它會燃起你編寫出色程式的熱情;它還將教會你認識並欣賞美;它會讓你有種敬畏,讓你難以抑制地渴望學習更多的東西。其他書或許會讓你成為一位更出色的程式設計師,但此書將一定會讓你成為一名程式設計師。
同時,你將會學到其他東西,函數語言程式設計(第三章)、惰性計算、超程式設計、虛擬機器、直譯器和編譯器。
一些人認為此書不適合新手。個人認為,雖然我並不完全認同要有一些程式設計經驗才能讀此書,但我還是一定推薦給初學者。畢竟這本書是寫給著名的6.001,是麻省理工學院的入門程式設計課程。此書或許需要多做努力(尤其你在做練習的時候,你也應當如此),但這個價是對得起這本書的。
你還不確信麼?那就讀讀第一版的前言或序言。網上有免費的電子版。 - Antti Sykäri
4. 《C程式設計語言》
推薦數:774
這本書簡潔易讀,會教給你三件事:C 程式語言;如何像程式設計師一樣思考;底層計算模型。(這對理解“底層”非常重要)—— Nathan
5. 《演算法導論》
推薦數:671
《程式碼大全》教你如何正確程式設計;《人月神話》教你如何正確管理;《設計模式》教你如何正確設計……
在我看來,程式碼只是一個工具,並非精髓。開發軟體的主要部分是建立新演算法或重新實現現有演算法。其他部分則像重新組裝樂高磚塊或建立“管理”層。我依然夢想這樣的工作,我的大部分時間(>50%)是在寫演算法,其他“管理”細節則留給其他人…… —— Ran Biron
6. 《重構:改善既有程式碼的設計》
推薦數:617
我想我不得不推薦《重構》:改進現有程式碼的設計。—— Martin
我必須承認,我最喜歡的程式設計語錄是出自這本書:任何一個傻瓜都能寫出計算機能理解的程式,而優秀的程式設計師卻能寫出別人能讀得懂的程式。—— Martin Fowler
7. 《設計模式》
就我而言,我認為四人幫編著的《設計模式》是一本極為有用的書。雖然此書並不像其他建議一樣有關“元”程式設計,但它強調封裝諸如模式一類的優秀程式設計技術,因而鼓勵其他人提出新模式和反模式(antipatterns),並運用於程式設計對話中。—— Chris Jester-Young
8. 《人月神話》
推薦數:588
9. 《計算機程式設計藝術》
推薦數:542
這是高德納傾注心血寫的一本書。—— Peter Coulton
10. 《編譯原理(中文版) |英文版》(龍書)
推薦數:462
我很奇怪,居然沒人提到龍書。(或許已有推薦,我沒有看到)。我從沒忘過此書的第一版封面。此書讓我知道了編譯器是多麼地神奇絕妙。- DB
11. 《深入淺出設計模式(中文版) |英文影印版》
推薦數:445
我知道四人幫的《設計模式》是一本標準書,但倒不如先看看這部大部頭,此書更為簡易。一旦你瞭解瞭解了基本原則,可以去看四人幫的那本聖經了。- Calanus
12. 《哥德爾、艾舍爾、巴赫書:集異璧之大成》
推薦數:437
如果下昂真正深入閱讀,我推薦道格拉斯·侯世達(Douglas Hofstadter)的《哥德爾、艾舍爾、巴赫書》。他極為深入研究了程式設計師每日都要面對的問題:遞迴、驗證、證明和布林代數。這是一本很出色的讀物,難度不大,偶爾有挑戰,一旦你要鏖戰到底,將是非常值得的。 – Jonik
1. 《程式碼大全》 史蒂夫·邁克康奈爾
推薦數:1684
“優秀的程式設計實踐的百科全書,《程式碼大全》注重個人技術,其中所有東西加起來,就是我們本能所說的“編寫整潔的程式碼”。這本書有50頁在談論程式碼佈局。” —— Joel Spolsky
對於新手來說,這本書中的觀念有點高階了。到你準備閱讀此書時,你應該已經知道並實踐過書中99%的觀念。– esac
2. 《程式設計師修煉之道》
推薦數:1504
對於那些已經學習過程式設計機制的程式設計師來說,這是一本卓越的書。或許他們還是在校生,但對要自己做什麼,還感覺不是很安全。就像草圖和架構之間的差別。雖然你在學校課堂上學到的是畫圖,你也可以畫的很漂亮,但如果你覺得你不太知道從哪兒下手,如果某人要你獨自畫一個P2P的音樂交換網路圖,那這本書就適合你了。—— Joel
3. 《計算機程式的構造和解釋》
推薦數:916
就個人而言,這本書目前為止對我影響醉倒的一本程式設計書。
《程式碼大全》、《重構》和《設計模式》這些經典書會教給你高效的工作習慣和交易細節。其他像《人件集》、《計算機程式設計心理學》和《人月神話》這些書會深入軟體開發的心理層面。其他書籍則處理演算法。這些書都有自己所屬的位置。
然而《計算機程式的構造和解釋》與這些不同。這是一本會啟發你的書,它會燃起你編寫出色程式的熱情;它還將教會你認識並欣賞美;它會讓你有種敬畏,讓你難以抑制地渴望學習更多的東西。其他書或許會讓你成為一位更出色的程式設計師,但此書將一定會讓你成為一名程式設計師。
同時,你將會學到其他東西,函數語言程式設計(第三章)、惰性計算、超程式設計、虛擬機器、直譯器和編譯器。
一些人認為此書不適合新手。個人認為,雖然我並不完全認同要有一些程式設計經驗才能讀此書,但我還是一定推薦給初學者。畢竟這本書是寫給著名的6.001,是麻省理工學院的入門程式設計課程。此書或許需要多做努力(尤其你在做練習的時候,你也應當如此),但這個價是對得起這本書的。
你還不確信麼?那就讀讀第一版的前言或序言。網上有免費的電子版。 - Antti Sykäri
4. 《C程式設計語言》
推薦數:774
這本書簡潔易讀,會教給你三件事:C 程式語言;如何像程式設計師一樣思考;底層計算模型。(這對理解“底層”非常重要)—— Nathan
5. 《演算法導論》
推薦數:671
《程式碼大全》教你如何正確程式設計;《人月神話》教你如何正確管理;《設計模式》教你如何正確設計……
在我看來,程式碼只是一個工具,並非精髓。開發軟體的主要部分是建立新演算法或重新實現現有演算法。其他部分則像重新組裝樂高磚塊或建立“管理”層。我依然夢想這樣的工作,我的大部分時間(>50%)是在寫演算法,其他“管理”細節則留給其他人…… —— Ran Biron
6. 《重構:改善既有程式碼的設計》
推薦數:617
我想我不得不推薦《重構》:改進現有程式碼的設計。—— Martin
我必須承認,我最喜歡的程式設計語錄是出自這本書:任何一個傻瓜都能寫出計算機能理解的程式,而優秀的程式設計師卻能寫出別人能讀得懂的程式。—— Martin Fowler
7. 《設計模式》
推薦數:617
就我而言,我認為四人幫編著的《設計模式》是一本極為有用的書。雖然此書並不像其他建議一樣有關“元”程式設計,但它強調封裝諸如模式一類的優秀程式設計技術,因而鼓勵其他人提出新模式和反模式(antipatterns),並運用於程式設計對話中。—— Chris Jester-Young
8. 《人月神話》
推薦數:588
9. 《計算機程式設計藝術》
推薦數:542
這是高德納傾注心血寫的一本書。—— Peter Coulton
10. 《編譯原理(中文版) |英文版》(龍書)
推薦數:462
我很奇怪,居然沒人提到龍書。(或許已有推薦,我沒有看到)。我從沒忘過此書的第一版封面。此書讓我知道了編譯器是多麼地神奇絕妙。- DB
11. 《深入淺出設計模式(中文版) |英文影印版》
推薦數:445
我知道四人幫的《設計模式》是一本標準書,但倒不如先看看這部大部頭,此書更為簡易。一旦你瞭解瞭解了基本原則,可以去看四人幫的那本聖經了。- Calanus
12. 《哥德爾、艾舍爾、巴赫書:集異璧之大成》
推薦數:437
如果下昂真正深入閱讀,我推薦道格拉斯·侯世達(Douglas Hofstadter)的《哥德爾、艾舍爾、巴赫書》。他極為深入研究了程式設計師每日都要面對的問題:遞迴、驗證、證明和布林代數。這是一本很出色的讀物,難度不大,偶爾有挑戰,一旦你要鏖戰到底,將是非常值得的。 – Jonik