程序員必讀的經(jīng)典書(shū)籍
程序員需要學(xué)習(xí)的知識(shí)地很多的,需要不斷的看書(shū)學(xué)習(xí),才能不斷的提升自己。下面是由學(xué)習(xí)啦小編給大家?guī)?lái)關(guān)于程序員必讀的書(shū)籍,希望對(duì)大家有幫助!
程序員必讀的書(shū)籍
1.重構(gòu):改善既有代碼的設(shè)計(jì)(軟件開(kāi)發(fā)的不朽經(jīng)典)
何為重構(gòu),一言以蔽之,就是在不改變外部行為的前提下,有條不紊地改善代碼。本書(shū)雖然使用Java語(yǔ)言書(shū)寫(xiě)示例代碼,但是其概念與思想同樣適合 于其他語(yǔ)言。書(shū)中,作者以一些平淡無(wú)奇,甚至帶有壞味道的代碼開(kāi)始,一步一步地修改轉(zhuǎn)變成更加靈活,可重用的代碼。通過(guò)書(shū)中的示例,你會(huì)清楚地明白什么才 是整潔的代碼。重構(gòu)其實(shí)依然成為經(jīng)驗(yàn)豐富的程序員的必備技能,當(dāng)你想要改善重構(gòu)代碼時(shí),讀一讀這本書(shū)就會(huì)讓你有章可循,豁然開(kāi)朗。
2.代碼整潔之道(Robert C. Martin力作,韓磊獻(xiàn)譯)
這是我最喜歡的一本書(shū),不止一次我將它推薦給我的同事,讀者還有學(xué)生。我認(rèn)為它可以稱得上軟件開(kāi)發(fā)與編碼方便最好的一本書(shū)。Bob大叔我想無(wú)需做介紹,他寫(xiě) 過(guò)一個(gè)關(guān)于敏捷開(kāi)發(fā)的系列書(shū)籍,我的書(shū)架上就有他的 《代碼整潔之道》 , 《程序員的職業(yè)素養(yǎng)》 , 《敏捷軟件開(kāi)發(fā)(原則模式與實(shí)踐)》 , 《敏捷軟件開(kāi)發(fā)(原則模式與實(shí)踐)》 , 《UML for Java For Programmers》 , 《Extreme Programming in Practice》等這些書(shū)籍。雖然他的這些書(shū)有點(diǎn)老舊,但是這些書(shū)仍然很有價(jià)值,縱使數(shù)十年之后,這些書(shū)依舊受用,尤其是在面向?qū)ο缶幊谭矫妗?本書(shū)不僅僅是告訴你要做什么,還教會(huì)你什么不能做。書(shū)中有關(guān)于代碼味道的一個(gè)章節(jié),全面列舉了大多數(shù)程序員遇到的各種錯(cuò)誤,其后的章節(jié)則詳細(xì)描述如何糾正 這些錯(cuò)誤。比如如何將過(guò)長(zhǎng)的switch聲明轉(zhuǎn)換成遵循開(kāi)放閉合原則的模型,如何利用集成和多態(tài)。再次啰嗦一下,這本書(shū)確實(shí)值得每個(gè)程序員擁有。和上本書(shū) 一樣,書(shū)中的例子使用Java語(yǔ)言,但依然適合使用其他面向?qū)ο缶幊陶Z(yǔ)言的開(kāi)發(fā)者閱讀。想要擼的一手好碼,這本書(shū)必不可少。
3.代碼大全
兩屆Software Jolt Award震撼大獎(jiǎng)得主!軟件開(kāi)發(fā)世界的地圖,經(jīng)典中的經(jīng)典
想必這本書(shū)大家都曾閱讀過(guò),這就是鼎鼎大名的《代碼大全》,從某個(gè)角度看,它其實(shí)就是C++版的《代碼整潔之道》。本書(shū)的目標(biāo)就是幫開(kāi)發(fā)者使用 做高質(zhì)的代碼寫(xiě)出更好的軟件。同樣書(shū)中也涉及了編程中常見(jiàn)問(wèn)題和最佳實(shí)踐。這本書(shū)也可以稱得上是必讀書(shū)籍,尤其是對(duì)于C和C++程序員?!洞a大全(第2 版)》中所論述的技術(shù)不僅填補(bǔ)了初級(jí)與高級(jí)編程實(shí)踐之間的空白,而且也為程序員們提供了一個(gè)有關(guān)軟件開(kāi)發(fā)技術(shù)的信息來(lái)源?!洞a大全(第2版)》對(duì)經(jīng)驗(yàn)豐 富的程序員、技術(shù)帶頭人、自學(xué)的程序員及沒(méi)有太多編程經(jīng)驗(yàn)的學(xué)生都是大有裨益的??梢哉f(shuō),只要您具有一定的編程基礎(chǔ),想成為一名優(yōu)秀的程序員,閱讀《代碼 大全(第2版)》都不會(huì)讓您失望。
4.單元測(cè)試的藝術(shù)
世界級(jí)軟件開(kāi)發(fā)大師,設(shè)計(jì)模式和敏捷開(kāi)發(fā)先驅(qū),“Bob大叔”Robert C. Martin強(qiáng)力推薦
如果非要做一件改善項(xiàng)目,提高開(kāi)發(fā)者水平的事情,我想那就是讓開(kāi)發(fā)者掌握單元測(cè)試的能力。對(duì)于專業(yè)的開(kāi)發(fā)者來(lái)說(shuō),單元測(cè)試是一項(xiàng)必備的技能,多數(shù)的程序員 卻不具備TDD(測(cè)試驅(qū)動(dòng)開(kāi)發(fā))的能力。我雖然在不太遵循TDD這種模式,但是也會(huì)為自己寫(xiě)的或維護(hù)的代碼編寫(xiě)單元測(cè)試。對(duì)于工程來(lái)說(shuō),開(kāi)源項(xiàng)目基本都嚴(yán) 格遵守執(zhí)行單元測(cè)試,而很多商業(yè)的工程則在單元測(cè)試方面有所缺失。一個(gè)擁有單元測(cè)試的項(xiàng)目會(huì)變得更加容易維護(hù)和更改。本書(shū)會(huì)介紹成功的項(xiàng)目與失敗項(xiàng)目的差 別,可維護(hù)的代碼庫(kù)與不可維護(hù)的代碼庫(kù)之間的區(qū)別。本書(shū)示例為.NET代碼,但這并不會(huì)影響你了解單元測(cè)試。如果你是一名技術(shù)負(fù)責(zé)人或者項(xiàng)目負(fù)責(zé)人,這本 書(shū)可以幫你更好地把控項(xiàng)目代碼質(zhì)量。如果你看Java更舒服的話,也可以看一看這本書(shū) 《JUnit實(shí)戰(zhàn)(第2版)》 。
5.精益軟件開(kāi)發(fā)管理之道
《精益軟件開(kāi)發(fā)管理之道》是一本軟件開(kāi)發(fā)方法學(xué)的書(shū)。作者從24個(gè)不同的視角,在更大的空間、時(shí)間、行業(yè)、文化背景下,考察了敏捷和精益方法。 《精益軟件開(kāi)發(fā)管理之道》詳細(xì)闡述了敏捷和精益開(kāi)發(fā)方法取得成功的深層原因?!毒孳浖_(kāi)發(fā)管理之道》包括以下內(nèi)容:系統(tǒng)思考,以適當(dāng)足夠的方式關(guān)注客 戶;技術(shù)杰出,介紹了杰出軟件開(kāi)發(fā)的基礎(chǔ)-低耦合的架構(gòu)、測(cè)試驅(qū)動(dòng)的開(kāi)發(fā)過(guò)程等;可靠交付,討論了工作流和日程計(jì)劃,以及反饋的重要作用;無(wú)情改進(jìn),討論 了所有精益組織的基本特點(diǎn):持續(xù)不斷、永不滿足的改進(jìn);卓越的人,卓越的結(jié)果來(lái)自于卓越的人;一致的領(lǐng)導(dǎo),討論在領(lǐng)導(dǎo)團(tuán)隊(duì)中達(dá)成一致。
6.設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)
這本書(shū)要么你讀過(guò),要么就是聽(tīng)說(shuō)過(guò),這就是經(jīng)典的GOF(Gang of Four 中文譯為_(kāi))設(shè)計(jì)模式一書(shū)。該書(shū)作者為四人,分別是Eric Gamma, Richard Helm, Ralph Johnson, 和John Vissides。四位頂尖的面向?qū)ο箢I(lǐng)域?qū)<揖倪x取了最具價(jià)值的設(shè)計(jì)實(shí)踐,加以分類整理和命名,并用簡(jiǎn)潔而易于重用的形式表達(dá)出來(lái)。本書(shū)已經(jīng)成為面向 對(duì)象技術(shù)人員的圣經(jīng)和詞典,書(shū)中定義的23個(gè)模式逐漸成為開(kāi)發(fā)界技術(shù)交流所必備的基礎(chǔ)知識(shí)和語(yǔ)匯。使用這些設(shè)計(jì)模式,我們可以設(shè)計(jì)出靈活,優(yōu)雅和可重用的 可擴(kuò)展的設(shè)計(jì)。
7.細(xì)說(shuō)PHP
51CTO“最受讀者喜愛(ài)的原創(chuàng)IT技術(shù)圖書(shū)”獎(jiǎng)
《細(xì)說(shuō)PHP》編寫(xiě)的宗旨是讓讀者能擁有一本PHP方面的學(xué)習(xí)和開(kāi)發(fā)使用的最好書(shū)籍,對(duì)所羅列出的每個(gè)知識(shí)點(diǎn)都進(jìn)行了細(xì)化和延伸,并力求講解到位,讓讀 者可以輕松地讀懂。對(duì)于幾乎每個(gè)知識(shí)點(diǎn)都有對(duì)應(yīng)且詳實(shí)的可運(yùn)行的代碼配套,對(duì)所有實(shí)例代碼都附有詳細(xì)注釋、說(shuō)明及運(yùn)行效果圖。另外在每個(gè)章節(jié)的最后還為讀 者安排了大量的和本章知識(shí)點(diǎn)配套的授課課件及自測(cè)試題(附加在光盤中),能更好地幫助讀者掌握理論知識(shí)點(diǎn),提高實(shí)際編程能力,寓學(xué)于練。對(duì)于入門與提高 PHP技術(shù)起到關(guān)鍵作用。
《細(xì)說(shuō)PHP》作者高洛峰?,F(xiàn)任北京LAMP兄弟連[1](易第優(yōu)教育)教學(xué)總監(jiān),五年軟件開(kāi)發(fā)工作經(jīng)驗(yàn),四年IT教學(xué)工作經(jīng)驗(yàn)。曾在多家上市企業(yè)擔(dān)任過(guò)技 術(shù)總監(jiān)、項(xiàng)目經(jīng)理、高級(jí)軟件工程師等職務(wù),具有扎實(shí)的技術(shù)功底。國(guó)內(nèi)資深的高級(jí)技術(shù)認(rèn)證講師,從事IT培訓(xùn)以來(lái)累計(jì)授課長(zhǎng)達(dá)6000課時(shí)以上,培訓(xùn)近千名 學(xué)員成功走向IT崗位,具有豐富的IT教學(xué)經(jīng)驗(yàn)。
程序員的專業(yè)技術(shù)書(shū)
1、《數(shù)學(xué)之美》第二版
獲獎(jiǎng)暢銷書(shū)《數(shù)學(xué)之美》第一版榮獲國(guó)家圖書(shū)館第八屆文津圖書(shū)獎(jiǎng)。
第一版入選廣電總局“2014年向全國(guó)青少年推薦百種優(yōu)秀圖書(shū)書(shū)目”,榮獲2012-2013年度全行業(yè)優(yōu)秀暢銷書(shū)。
信息領(lǐng)域大學(xué)生必讀好書(shū),央視新聞推薦的學(xué)科敲門磚。
新版增加了大數(shù)據(jù)和機(jī)器學(xué)習(xí)等最新內(nèi)容,以滿足人們對(duì)當(dāng)下技術(shù)的學(xué)習(xí)需求;同時(shí),根據(jù)專家和讀者的反饋更正了錯(cuò)漏,并更新了部分內(nèi)容。
《數(shù) 學(xué)之美》第一版上市后深受廣大讀者歡迎,并榮獲國(guó)家圖書(shū)館第八屆文津圖書(shū)獎(jiǎng)。讀者說(shuō),讀了《數(shù)學(xué)之美》,才發(fā)現(xiàn)大學(xué)時(shí)學(xué)的數(shù)學(xué)知識(shí),比如馬爾科夫鏈、矩陣 計(jì)算,甚至余弦函數(shù)原來(lái)都如此親切,并且栩栩如生,才發(fā)現(xiàn)自然語(yǔ)言和信息處理這么有趣。而今,數(shù)學(xué)在信息產(chǎn)業(yè)中的應(yīng)用越來(lái)越廣泛,因此,作者在第二版中增 加了一些內(nèi)容,尤其是針對(duì)大數(shù)據(jù)和機(jī)器學(xué)習(xí)的內(nèi)容,以便滿足人們對(duì)當(dāng)下技術(shù)的學(xué)習(xí)需求。
2、文明之光 第三冊(cè)
吳軍博士繼獲獎(jiǎng)暢銷書(shū)《浪潮之巔》、《數(shù)學(xué)之美》之后的跨界之作
為您講述他眼中的超越上下五千年的人類文明史
隨文津獎(jiǎng)得主一起體會(huì)科技與人文之美
作 者所選的創(chuàng)作素材來(lái)自于十幾年來(lái)在世界各地的所見(jiàn)所聞,對(duì)其內(nèi)容都有著深刻的體會(huì)和認(rèn)識(shí)。《文明之光》系列第三冊(cè)每個(gè)章節(jié)依然相對(duì)獨(dú)立,書(shū)中全景式地展現(xiàn) 了人類文明發(fā)展歷程中的多樣性。內(nèi)容涉及音樂(lè)、美術(shù)、計(jì)算機(jī)、互聯(lián)網(wǎng)、金融、硅谷對(duì)世界科技發(fā)展的啟迪、微粒子和宇宙天文學(xué)、環(huán)境保護(hù)八個(gè)專題。
3、構(gòu)建之法:現(xiàn)代軟件工程
“做中學(xué) Learning By Doing”的現(xiàn)代方式教授軟件工程
李未院士鼎力推薦,眾多軟工教師一致好評(píng)
微軟研發(fā)總監(jiān)鄒欣力作
推薦軟件工程專業(yè)學(xué)子閱讀,了解軟件工程真正內(nèi)涵,懂得“工程”二字真正含義,知道軟件工程和計(jì)算機(jī)科學(xué)的區(qū)別。了解之后,就知道為何軟件工程是就業(yè)含金量較高的行業(yè)了。
書(shū)中設(shè)想了大量的場(chǎng)景“學(xué)”和“習(xí)”,并且用了大量的類比,非常生動(dòng)有趣。這本教材也對(duì)軟件工程課老師提出了更高的要求;對(duì)學(xué)生而言,同樣面臨著要付出怎樣的努力才能學(xué)到“干貨”的選擇。
《構(gòu)建之法:現(xiàn)代軟件工程》共分17章,對(duì)照美國(guó)ACM/IEEE2013年新出版的計(jì)算機(jī)科學(xué)教學(xué)指導(dǎo) (Computer ScienceCurricula 2013)中的軟件工程相關(guān)部分,這本教材覆蓋了其中大多數(shù)Core-Tier1和Core-Tier2的內(nèi)容。可以說(shuō),全書(shū)對(duì)軟件工程內(nèi)容的覆蓋不遜于 任何一本現(xiàn)行的教材,同時(shí)講述了業(yè)界最新實(shí)踐方法。
程序員看的好書(shū)籍
1.《哥德?tīng)?、埃舍爾、巴赫?/p>
豆瓣評(píng)分:9.4 分
作者簡(jiǎn)介:道格拉斯·理查·郝夫斯臺(tái)特,中文名侯世達(dá),美國(guó)學(xué)者、作家。他的主要研究領(lǐng)域包括意識(shí)、類比、藝術(shù)創(chuàng)造、文學(xué)翻譯以及數(shù)學(xué)和物理學(xué)探索。 因其著作《哥德?tīng)?、埃舍爾、巴赫》獲得普立茲獎(jiǎng)(非小說(shuō)類別)和美國(guó)國(guó)家經(jīng)典獎(jiǎng)(科學(xué)類別)。
推薦理由:這是一部天書(shū)。在數(shù)學(xué),繪畫(huà),音樂(lè)和故事中暢游,卻在探討哲學(xué)中最深刻的問(wèn)題:意識(shí)和靈魂如何產(chǎn)生,從哲學(xué)角度探討人工智能和人類智能。當(dāng)你看完書(shū)后,也許你具體記不得太多細(xì)節(jié),但是不經(jīng)意間你會(huì)發(fā)現(xiàn)它已經(jīng)深深地影響了你的世界觀。
2.《算法導(dǎo)論》
豆瓣評(píng)分:9.4 分
作者簡(jiǎn)介:托馬斯·科爾曼,達(dá)特茅斯學(xué)院計(jì)算機(jī)科學(xué)系教授、系主任;查爾斯·雷瑟爾森,麻省理工學(xué)院計(jì)算機(jī)科學(xué)與電氣工程系教授,他目前主持 MIT 超級(jí)計(jì)算技術(shù)研究組,并是 MIT 計(jì)算機(jī)科學(xué)和人工智能實(shí)驗(yàn)室計(jì)算理論研究組的成員;羅納德·李維斯特,現(xiàn)任麻省理工學(xué)院電子工程和計(jì)算機(jī)科學(xué)系安德魯與厄納·維特爾比(Andrew and Erna Viterbi)教授。他是 MIT 計(jì)算機(jī)科學(xué)和人工智能實(shí)驗(yàn)室的成員,并領(lǐng)導(dǎo)著其中的信息安全和隱私中心。他現(xiàn)在擔(dān)任國(guó)家密碼學(xué)會(huì)的負(fù)責(zé)人;克利福德·斯坦,哥倫比亞大學(xué)計(jì)算機(jī)科學(xué)系和工業(yè)工程與運(yùn)籌學(xué)系教授,他還是工業(yè)工程與運(yùn)籌學(xué)系的系主任。
推薦理由:這本書(shū)深入淺出,全面地介紹了計(jì)算機(jī)算法。對(duì)每一個(gè)算法的分析既易于理解又十分有趣,并保持了數(shù)學(xué)嚴(yán)謹(jǐn)性。本書(shū)的設(shè)計(jì)目標(biāo)全面,適用于多種用途。涵蓋的內(nèi)容有:算法在計(jì)算中的作用,概率分析和隨機(jī)算法的介紹。書(shū)中專門討論了線性規(guī)劃,介紹了動(dòng)態(tài)規(guī)劃的兩個(gè)應(yīng)用,隨機(jī)化和線性規(guī)劃技術(shù)的近似算法等,還有有關(guān)遞歸求解、快速排序中用到的劃分方法與期望線性時(shí)間順序統(tǒng)計(jì)算法,以及對(duì)貪心算法元素的討論。此書(shū)還介紹了對(duì)強(qiáng)連通子圖算法正確性的證明,對(duì)哈密頓回路和子集求和問(wèn)題的 NP 完全性的證明等內(nèi)容。
猜你喜歡: