計(jì)算機(jī)專業(yè)必讀書籍
計(jì)算機(jī)專業(yè)要讀哪些書籍呢?下面是學(xué)習(xí)啦小編精心為您整理的計(jì)算機(jī)專業(yè)必讀書籍,希望您喜歡!
一些經(jīng)典的計(jì)算機(jī)書籍
算法導(dǎo)論(第2版)
代碼大全(第2版)
C++ Primer中文版(第4版)
設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)
浪潮之巔
Java編程思想(第4版)
Java核心技術(shù) 卷1:基礎(chǔ)知識
Java核心技術(shù) 卷2:高級特性
人月神話
Linux內(nèi)核編程
C程序設(shè)計(jì)語言(第2版新版)
黑客與畫家:硅谷創(chuàng)業(yè)之父Paul Graham文集
編程之美:微軟技術(shù)面試心得
代碼之美
軟件隨想錄:程序員部落酋長Joel談軟件
架構(gòu)之美
國外計(jì)算機(jī)科學(xué)經(jīng)典教材:Unix & Linux大學(xué)教程
深入理解計(jì)算機(jī)系統(tǒng)(原書第2版)
UNIX網(wǎng)絡(luò)編程 卷1:套接字聯(lián)網(wǎng)API
UNIX網(wǎng)絡(luò)編程 卷2:進(jìn)程間通信
自動機(jī)理論、語言和計(jì)算導(dǎo)論
軟件架構(gòu)的藝術(shù)
Effective C++中文版
Effective Java中文版(第2版)
PHP & MySQL Web數(shù)據(jù)庫應(yīng)用開發(fā)指南(第2版)
PHP經(jīng)典實(shí)例(第2版)
C++ 編程思想 第1卷
C++ 編程思想 第2卷 兩卷合訂本
Linux內(nèi)核設(shè)計(jì)的藝術(shù):圖解Linux操作系統(tǒng)架構(gòu)設(shè)計(jì)與實(shí)現(xiàn)原理
數(shù)據(jù)庫系統(tǒng)導(dǎo)論(原書第8版)
Python參考手冊(第4版)
Python灰帽子
提高C++性能的編程技術(shù)
從網(wǎng)管員到CTO:網(wǎng)絡(luò)設(shè)備配置與管理實(shí)戰(zhàn)詳解
深入理解計(jì)算機(jī)系統(tǒng)(修訂版)
UNIX編程藝術(shù)
深入理解Java虛擬機(jī):JVM高級特性與最佳實(shí)踐
Microsoft.NET框架程序設(shè)計(jì)
代碼整潔之道
編程珠璣(第2版)、編程珠璣(續(xù))
大話設(shè)計(jì)模式
C#開發(fā)寶典
深入理解Linux內(nèi)核(第3版)
UNIX環(huán)境高級編程 (第2版)
WCF服務(wù)編程:.NET開發(fā)者決戰(zhàn)SOA的制勝利劍(第3版)
現(xiàn)代編譯原理:C語言描述 (虎書)
高級編譯器設(shè)計(jì)與實(shí)現(xiàn) (鯨書)
編譯原理(第2版)(龍書)
Windows核心編程 (第5版)
C++標(biāo)準(zhǔn)程序庫:自修教程與參考手冊
設(shè)計(jì)原本:計(jì)算機(jī)科學(xué)巨匠Frederick P.Brooks的思考
軟件框架設(shè)計(jì)的藝術(shù)
計(jì)算機(jī)專業(yè)人士必讀好書(30本經(jīng)典)
1. 《代碼大全》 史蒂夫·邁克康奈爾
推薦數(shù):1684
“優(yōu)秀的編程實(shí)踐的百科全書,《代碼大全》注重個人技術(shù),其中所有東西加起來,就是我們本能所說的“編寫整潔的代碼”。這本書有 50 頁在談?wù)摯a布局。” —— Joel Spolsky
對于新手來說,這本書中的觀念有點(diǎn)高階了。到你準(zhǔn)備閱讀此書時,你應(yīng)該已經(jīng)知道并實(shí)踐過書中 99% 的觀念。– esac
2. 《程序員修煉之道》
推薦數(shù):1504
對于那些已經(jīng)學(xué)習(xí)過編程機(jī)制的程序員來說,這是一本卓越的書?;蛟S他們還是在校生,但對要自己做什么,還感覺不是很安全。就像草圖和架構(gòu)之間的差別。雖然你在學(xué)校課堂上學(xué)到的是畫圖,你也可以畫的很漂亮,但如果你覺得你不太知道從哪兒下手,如果某人要你獨(dú)自畫一個 P2P 的音樂交換網(wǎng)絡(luò)圖,那這本書就適合你了。—— Joel
3. 《計(jì)算機(jī)程序的構(gòu)造和解釋》
推薦數(shù):916
就個人而言,這本書目前為止對我影響醉倒的一本編程書。
《代碼大全》、《重構(gòu)》和《設(shè)計(jì)模式》這些經(jīng)典書會教給你高效的工作習(xí)慣和交易細(xì)節(jié)。其他像《人件集》、《計(jì)算機(jī)編程心理學(xué)》和《人月神話》這些書會深入軟件開發(fā)的心理層面。其他書籍則處理算法。這些書都有自己所屬的位置。
然而《計(jì)算機(jī)程序的構(gòu)造和解釋》與這些不同。這是一本會啟發(fā)你的書,它會燃起你編寫出色程序的熱情;它還將教會你認(rèn)識并欣賞美;它會讓你有種敬畏,讓你難以抑制地渴望學(xué)習(xí)更多的東西。其他書或許會讓你成為一位更出色的程序員,但此書將一定會讓你成為一名程序員。
同時,你將會學(xué)到其他東西,函數(shù)式編程(第三章)、惰性計(jì)算、元編程、虛擬機(jī)、解釋器和編譯器。
一些人認(rèn)為此書不適合新手。個人認(rèn)為,雖然我并不完全認(rèn)同要有一些編程經(jīng)驗(yàn)才能讀此書,但我還是一定推薦給初學(xué)者。畢竟這本書是寫給著名的6.001,是麻省理工學(xué)院的入門編程課程。此書或許需要多做努力(尤其你在做練習(xí)的時候,你也應(yīng)當(dāng)如此),但這個價是對得起這本書的。
你還不確信么?那就讀讀第一版的前言或序言。網(wǎng)上有免費(fèi)的電子版。 - Antti Sykäri
4. 《C程序設(shè)計(jì)語言》
推薦數(shù):774
這本書簡潔易讀,會教給你三件事:C 編程語言;如何像程序員一樣思考;底層計(jì)算模型。(這對理解“底層”非常重要)—— Nathan
5. 《算法導(dǎo)論》
推薦數(shù):671
《代碼大全》教你如何正確編程;《人月神話》教你如何正確管理;《設(shè)計(jì)模式》教你如何正確設(shè)計(jì)……
在我看來,代碼只是一個工具,并非精髓。開發(fā)軟件的主要部分是創(chuàng)建新算法或重新實(shí)現(xiàn)現(xiàn)有算法。其他部分則像重新組裝樂高磚塊或創(chuàng)建“管理”層。我依然夢想這樣的工作,我的大部分時間(>50%)是在寫算法,其他“管理”細(xì)節(jié)則留給其他人…… —— Ran Biron
6. 《重構(gòu):改善既有代碼的設(shè)計(jì)》
推薦數(shù):617
http://swrdt.com/h-col-107.html 我必須承認(rèn),我最喜歡的編程語錄是出自這本書:任何一個傻瓜都能寫出計(jì)算機(jī)能理解的程序,而優(yōu)秀的程序員卻能寫出別人能讀得懂的程序。—— Martin Fowler
7. 《設(shè)計(jì)模式》
推薦數(shù):617
就我而言,我認(rèn)為_編著的《設(shè)計(jì)模式》是一本極為有用的書。雖然此書并不像其他建議一樣有關(guān)“元”編程,但它強(qiáng)調(diào)封裝諸如模式一類的優(yōu)秀編程技術(shù),因而鼓勵其他人提出新模式和反模式(antipatterns),并運(yùn)用于編程對話中。—— Chris Jester-Young
8. 《人月神話》
推薦數(shù):588
9. 《計(jì)算機(jī)程序設(shè)計(jì)藝術(shù)》
推薦數(shù):542
這是高德納傾注心血寫的一本書。—— Peter Coulton
10. 《編譯原理》(龍書)
推薦數(shù):462
我很奇怪,居然沒人提到龍書。(或許已有推薦,我沒有看到)。我從沒忘過此書的第一版封面。此書讓我知道了編譯器是多么地神奇絕妙。- DB
11. 《深入淺出設(shè)計(jì)模式》
推薦數(shù):445
我知道_的《設(shè)計(jì)模式》是一本標(biāo)準(zhǔn)書,但倒不如先看看這部大部頭,此書更為簡易。一旦你了解了解了基本原則,可以去看_的那本圣經(jīng)了。- Calanus
12. 《哥德爾、艾舍爾、巴赫書:集異璧之大成》
推薦數(shù):437
如果下昂真正深入閱讀,我推薦道格拉斯·侯世達(dá)(Douglas Hofstadter)的《哥德爾、艾舍爾、巴赫書》。他極為深入研究了程序員每日都要面對的問題:遞歸、驗(yàn)證、證明和布爾代數(shù)。這是一本很出色的讀物,難度不大,偶爾有挑戰(zhàn),一旦你要鏖戰(zhàn)到底,將是非常值得的。 – Jonik
13. 《代碼整潔之道》
推薦數(shù):329
雖然《代碼整潔之道》和《代碼大全》有很多共同之處,但它有更為簡潔更為實(shí)際的清晰例子。 – Craig P. Motlin
14. 《Effective C++》和《More Effective C++》
推薦數(shù):297
在我職業(yè)生涯早期,Scott Meyer 的《Effective C++》和后續(xù)的《More Effective C++》都對我的編程能力有著直接影響。正如當(dāng)時的一位朋友所說,這些書縮短你培養(yǎng)編程技能的過程,而其他人可能要花費(fèi)數(shù)年。
去年對我影響最大的一本書是《大教堂與市集》,該書教會我很有關(guān)開源開發(fā)過程如何運(yùn)作,和如何處理我代碼中的 Bug。 – John Channing
15. 《編程珠璣》
推薦數(shù):282
盡管我不得不羞愧地承認(rèn),書中一半的東西我都沒有理解,但我真的推薦《編程珠璣》,書中有些令人驚奇的東西。 – Matt Warren
16. 《修改代碼的藝術(shù)》by Michael Feathers
我認(rèn)為沒有任何一本書能向這本書一樣影響了我的編程觀點(diǎn)。它明確地告訴你如何處理其他人的代碼,含蓄地教會你避免哪些(以及為什么要避免)。- Wolfbyte
同意。很多開發(fā)人員討論用干凈的石板來編寫軟件。但我想幾乎所有開發(fā)人員的某些時候是在吃其他開發(fā)人員的狗食。– Bernard Dy
17. 《編碼:隱匿在計(jì)算機(jī)軟硬件背后的語言》
我推薦 Charles Petzold 的《編碼》。在這個充滿工具和 IDE 的年代,很多復(fù)雜度已經(jīng)從程序員那“抽取”走了,這本書一本開眼之作。 – hemil
18. 《禪與摩托車維修藝術(shù) / Zen and the Art of Motorcycle Maintenance》
對我影響最大的那本書是 Robert Pirsig 的《禪與摩托車維修藝術(shù)》。不管你做什么事,總是要力求完美,徹底了解你手中的工具和任務(wù),更為重要的是,要有樂趣(因?yàn)槿绻阕鍪掠袠啡?,一切將自發(fā)引向更好的結(jié)果)。 – akr
(編注:關(guān)于這本書,也可以看看阮一峰的讀后感。)
19. 《Peopleware / 人件集:人性化的軟件開發(fā)》
Demarco 和 Lister 表明,軟件開發(fā)中的首要問題是人,并非技術(shù)。他們的答案并不簡單,只是令人難以置信的成功。第二版新增加了八章內(nèi)容。 – Eduardo Molteni
20. 《Coders at Work / 編程人生》
一本非常有影響力的書,可以從中學(xué)到一些業(yè)界頂級人士的經(jīng)驗(yàn),了解他們?nèi)绾嗡伎疾⒐ぷ鳌?– Jahanzeb Farooq
21. 《Surely You’re Joking, Mr. Feynman! / 別鬧了,費(fèi)曼先生!》
雖然這本書可能有點(diǎn)偏題,但不管你信不信,這本書曾在計(jì)算機(jī)科學(xué)專業(yè)課程的閱讀列表之上。一個優(yōu)秀的角色模型,一本有關(guān)好奇心的優(yōu)秀書籍。 – mike511
22. 《Effective Java 中文版》
此書第二版教你如何編寫漂亮并高效的代碼,雖然這是一本 Java 書,但其中有很多跨語言的理念。 – Marcio Aguiar
23. 《Patterns of Enterprise Application Architecture / 企業(yè)應(yīng)用架構(gòu)模式》
很奇怪,還沒人推薦 Martin Fowler 的《企業(yè)應(yīng)用架構(gòu)模式》- levi rosol
24. 《The Little Schemer》和《The Seasoned Schemer》 nmiranda
這兩本是 LISP 的英文書,尚無中文版。美國東北大學(xué)網(wǎng)站上也有電子版。
25. 《交互設(shè)計(jì)之路》英文名:《The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity》該書作者:Alan Cooper,人稱 Visual Basic 之父,交互設(shè)計(jì)之父。
本書是基于眾多商務(wù)案例,講述如何創(chuàng)建更好的、高客戶忠誠度的軟件產(chǎn)品和基于軟件的高科技產(chǎn)品的書。本書列舉了很多真實(shí)可信的實(shí)際例子,說明目前在軟件產(chǎn)品和基于軟件的高科技產(chǎn)品中,普遍存在著“難用”的問題。作者認(rèn)為,“難用”問題是由這些產(chǎn)品中存在著的高度“認(rèn)知摩擦”引起的,而產(chǎn)生這個問題的根源在于現(xiàn)今軟件開發(fā)過程中欠缺了一個為用戶利益著想的前期“交互設(shè)計(jì)”階段。“難用”的產(chǎn)品不僅損害了用戶的利益,最終也將導(dǎo)致企業(yè)的失敗。本書通過一些生動的實(shí)例,讓人信服地講述了由作者倡導(dǎo)的“目標(biāo)導(dǎo)向”交互設(shè)計(jì)方法在解決“難用”問題方面的有效性,證實(shí)了只有改變現(xiàn)有觀念,才能有效地在開發(fā)過程中引入交互設(shè)計(jì),將產(chǎn)品的設(shè)計(jì)引向成功。
本書雖然是一本面向商務(wù)人員而編寫的書,但也適合于所有參與軟件產(chǎn)品和基于軟件的高科技產(chǎn)品開發(fā)的專業(yè)人士,以及關(guān)心軟件行業(yè)和高科技行業(yè)現(xiàn)狀與發(fā)展的人士閱讀。
他還有另一本中文版著作:《About Face 3 交互設(shè)計(jì)精髓》
26. 《Why’s (Poignant) Guide to Ruby 》
如果你不是程序員,閱讀此書可能會很有趣,但如果你已經(jīng)是個程序員,可能會有點(diǎn)乏味。
27. 《Unix 編程藝術(shù)》
It is useful regardless operating system you use. – J.F. Sebastian
不管你使用什么操作系統(tǒng),這本書都很有用。 – J.F. Sebastian
28. 《Practices of an Agile Developer / 高效程序員的 45 個習(xí)慣:敏捷開發(fā)修煉之道》
45個習(xí)慣,分為 7 個方面:工作態(tài)度、學(xué)習(xí)、軟件交付、反饋、編碼、調(diào)試和協(xié)作。
每一個具體的習(xí)慣里,一開始提出一個謬論,然后展開分析,之后有正隊(duì)性地提出正確的做法,并設(shè)身處地地講出了正確做法給你個人的“切身感受”,最后列出幾條注意事項(xiàng),幫助你修正自己的做法(“平衡的藝術(shù)”)。
29. 《Test-Driven Development by Example. / 測試驅(qū)動開發(fā)》
前面已經(jīng)提到的很多書都啟發(fā)了我,并影響了我,但這本書每位程序員都應(yīng)該讀。它向我展示了單元測試和 TDD 的重要性,并讓我很快上手。 – Curro
我不關(guān)心你的代碼有多好或優(yōu)雅。如果你沒有測試,你或許就如同沒有編寫代碼。這本書得到的推薦數(shù)應(yīng)該更高些。人們討論編寫用戶喜歡的軟件,或既設(shè)計(jì)出色并健壯的高效代碼,但如果你的軟件有一堆 bug,談?wù)撃切〇|西毫無意義。– Adam Gent
30. 《Don’t Make Me Think / 點(diǎn)石成金:訪客至上的網(wǎng)頁設(shè)計(jì)秘笈》
取決于你所追求的目標(biāo)。我喜歡《代碼大全》是因純編程,《點(diǎn)石成金》是一本有關(guān) UI 設(shè)計(jì)的卓越書籍。 – Justin Standard
計(jì)算機(jī)專業(yè)必讀書籍
上一篇:管理者必讀的10本書
下一篇:行政管理必讀書目