達牛:APP開發程序猿必備書單

很多人學習編程的時候,都在問:作為一個程序猿,在最開始的時候,應該讀一些什么書。

今天,小編就推薦大家學習這十本可以提升編程技巧的書籍。

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

堅持學習,編程技術才能越加精湛,做個快樂的碼農,多看書,多練習。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容