程序員一生必讀的經(jīng)典書籍推薦
程序員一生必讀的經(jīng)典書籍推薦
程序員多閱讀一些書可以幫助你避免一些常見的陷阱和錯誤,一些開發(fā)人員早期經(jīng)歷的陷阱和犯過的錯誤。下面是由學(xué)習(xí)啦小編給大家?guī)黻P(guān)于程序員一生必讀的經(jīng)典書籍推薦,希望對大家有幫助!
程序員一生必讀的經(jīng)典書籍推薦
程序員一生必讀的書:《Code Complete 2(代碼大全 2)》
《Code Complete 2》就是它了!這就是我認(rèn)為首屈一指值得閱讀的書(請恕我妄言),如果你要成為一個優(yōu)秀的軟件工程師的話。它被廣泛認(rèn)為是最好的實用性編程指南之一,Steve McConnell最初的《Code Complete》在過去的10多年時間里,一直在幫助開發(fā)人員編寫更好的軟件?,F(xiàn)在,這部經(jīng)典書籍已全面更新,修改成了前沿的實踐方法——以及數(shù)以百計的新的代碼示例——修訂了軟件結(jié)構(gòu)的藝術(shù)和科學(xué)。從研究、學(xué)術(shù)界和日常商業(yè)實踐中捕獲知識體系,McConnell將最有效的技術(shù)和必須知道的原則總結(jié)成清晰又務(wù)實的指導(dǎo)。無論你的經(jīng)驗水平,開發(fā)環(huán)境,還有項目規(guī)模如何,這本書都可以啟迪和激發(fā)你的思考,幫助你打造最優(yōu)質(zhì)的代碼。
程序員一生必讀的書:《Pragmatic Programmer(程序員修煉之道)》
《Pragmatic Programmer》這是我最先閱讀的編程書籍之一。是我的一個朋友在我就職第一份專業(yè)工作的時候推薦給我的。我很慶幸他這么做了。盡管這本書寫于1999年,但是它的概念是我們以一種務(wù)實的態(tài)度去開發(fā)復(fù)雜系統(tǒng)的基礎(chǔ)。程序員也是工匠,他們被訓(xùn)練使用一組特定的工具(編輯器,對象管理,版本跟蹤器)生成某種可在一定環(huán)境中(硬件組件上的操作系統(tǒng))工作的產(chǎn)品(程序)。和任何其他工藝一樣,計算機編程也孕育出了智慧,但其中的大多數(shù)智慧是不能從大學(xué)或認(rèn)證課程中學(xué)到的。大多數(shù)程序員只能通過獨立的試驗,時間一點點的積累,才能掌握這些所謂的技巧。在《Pragmatic Programmer》一書中,Andrew Hunt和David Thomas編纂了很多他們在分別作為軟件設(shè)計者和代碼編寫者的職業(yè)生涯中發(fā)現(xiàn)的真理。
作者的一些實用性建議非常具體,而且顯然很易于實施。他們建議讀者去學(xué)習(xí),例如一個文本編輯器,然后在各種情況下使用它。他們還建議使用版本跟蹤軟件——即使是對最小型的項目,學(xué)習(xí)正則表達(dá)式語法和文本操作語言。書中還有其他許多也非常有價值的建議。在調(diào)試部分,作者指出:“如果你看到蹄印的話,應(yīng)該考慮馬這個范圍,而不是斑馬。”也就是說,要懷疑一切,然后從最顯眼的地方尋找問題。還有關(guān)于預(yù)估時間和費用,以及將集成測試納入到開發(fā)進(jìn)程的建議。《Pragmatic Programmer》讓人愛不釋手的還有兩個原因:它會更清晰地梳理你自己積累的智慧,它還會給你介紹你還沒考慮到的工作方法。
程序員一生必讀的書:《Structure and Interpretation of Computer Programs》
《Structure and Interpretation of Computer Programs》以一種對解決問題和編程技術(shù)分析和嚴(yán)謹(jǐn)?shù)膽B(tài)度,這本書面向于工程?!禨tructure and Interpretation of Computer Programs》強調(diào)通過不同方式來發(fā)揮核心作用,以處理計算模型中的時間。其獨特的方式使得它非常適合于計算機科學(xué)課程,以及編程語言和程序設(shè)計的入門。這本書進(jìn)一步解釋了4個最著名的編程語言范式——命令式編程,面向?qū)ο缶幊蹋谶壿嬀幊毯蛻?yīng)用性編程。
程序員一生必讀的書:《Introduction to Algorithms(算法導(dǎo)論)》
《Introduction to Algorithms》這必須是理解和使用算法(將在軟件開發(fā)中涉及很多)的最佳書籍。有些關(guān)于算法的書雖然嚴(yán)謹(jǐn),但不全面——還有一些雖然涉及面廣,但卻缺乏嚴(yán)謹(jǐn)性。《Introduction to Algorithms》獨特地結(jié)合了嚴(yán)謹(jǐn)性和全面性。這本書涵蓋了廣泛又深入的算法,使得書中的設(shè)計和分析能夠面向所有層次的閱讀人員。每個章節(jié)相對獨立,可看作是一個學(xué)習(xí)單元。算法用英語和可讀的偽代碼描述。它使用初級基本的解釋,并不犧牲覆蓋的深度和材料的嚴(yán)謹(jǐn)性。第一版不僅廣泛成為了世界各地高校的教材,還成為了專業(yè)人士的標(biāo)準(zhǔn)參考書。第二版新增了算法,概率分析,隨機算法,線性規(guī)劃的章節(jié)。
程序員一生必讀的書:《Clean Code(代碼整潔之道)》
《Clean Code》,作者Robert C. Martin,分為三個部分。第一部分介紹原則、模式和編寫干凈代碼的實踐方法。第二部分包括若干個復(fù)雜度漸進(jìn)的研究案例。每個案例研究就是一個清潔代碼的練習(xí),也是通過解決代碼庫中的一些問題讓代碼變得健全、高效的練習(xí)。第三部分是決定性的一個部分:每個單獨的章節(jié)在創(chuàng)建案例研究的時候包含了一系列啟發(fā)式的教學(xué)法。最后得到了描述我們在編寫、閱讀和清理代碼時的思考方式的知識庫。
程序員一生必讀的書:《Refactoring(重構(gòu))》
《Refactoring》Martin Fowler寫的《Refactoring》主要關(guān)于改進(jìn)現(xiàn)有代碼的設(shè)計。這是一個改變軟件系統(tǒng)而不改變代碼的外部行為,卻能提高它內(nèi)部結(jié)構(gòu)的過程。通過重構(gòu),你甚至可以將一個糟糕的設(shè)計重新制作為一個很好的設(shè)計。這本書對重構(gòu)原則進(jìn)行了深入探討,包括在哪里發(fā)現(xiàn)重構(gòu)的機會,以及如何建立所需的測試。另外還有一個目錄有40多個已經(jīng)用細(xì)節(jié)證明的重構(gòu),這些細(xì)節(jié)包括何時以及為什么要使用重構(gòu),逐步說明如何實現(xiàn)重構(gòu),并舉例說明重構(gòu)是如何工作的。這本書用Java作為其主要語言而寫,但其中的思路適用于任何OO語言。
猜你喜歡:
2.清華推薦必讀書目