國外知名網站stackoverflow上曾有一個問題調查:哪本書是對程序員最有影響、每個程序員都該閱讀的書,這個調查吸引了153,432人訪問,讀者共推薦出了478本書,其中最火的一本書已經被頂了1333次。
如果你是個程序員,相信你一定有興趣看看這些書都是哪些?下面給大家分享Stack Overflow上最受歡迎的11本程序員書籍!
第一名:1333票《代碼大全(第二版)》
● 出自著名IT暢銷書作者史蒂夫·邁克康奈爾之手
● 曾被《軟件開發》雜志授予優異産品震撼大獎
第2版的《代碼大全》是對第一版完全進行了重寫;增加了很多與時俱進的内容。是一本完整的軟件構建手冊,涵蓋了軟件構建過程中的所有細節。它從軟件質量和編程思想等方面論述了軟件構建的各個問題,并詳細論述了緊跟潮流的新技術、高屋建瓴的觀點、通用的概念,還含有豐富而典型的程序示例。
這本書中所論述的技術不僅填補了初級與高級編程技術之間的空白,而且也為程序員們提供了一個有關編程技巧的信息來源。可以說,無論是什麼背景的讀者,閱讀這本書都有助于在更短的時間内、更容易地寫出更好的程序。
第二名:1181票 《程序員修煉之道》
《程序員修煉之道》由一系列的獨立的部分組成,涵蓋的主題從個人責任、職業發展,直到用于使代碼保持靈活、并且易于改編和複用的各種架構技術。利用許多富有娛樂性的奇聞轶事、有思想性的例子以及有趣的類比,全面闡釋了軟件開發的許多不同方面的最佳實踐和重大陷阱。
盡管這本書寫于1999年,但是它的概念是我們以一種務實的态度去開發複雜系統的基礎。程序員也是工匠,他們被訓練使用一組特定的工具(編輯器,對象管理,版本跟蹤器)生成某種可在一定環境中(硬件組件上的操作系統)工作的産品(程序)。
第三名:701票《計算機程序的構造和解釋》
以一種對解決問題和編程技術分析和嚴謹的态度,這本書面向于工程。這本書進一步解釋了4個最著名的編程語言範式——命令式編程,面向對象編程,基于邏輯編程和應用性編程。
第四名:572票 《C程序設計語言》
在計算機發展的曆史上,沒有哪一種程序設計語言像C語言這樣應用廣泛。本書原著即為C語言的設計者之一Dennis M.Ritchie和著名計算機科學家Brian W.Kernighan合著的一本介紹C語言的權威經典著作。
我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。人們熟知的“hello,World"程序就是由本書首次引入的,現在,這一程序已經成為衆多程序設計語言入門的第一課。對于計算機從業人員來說,《C程序設計語言》是一本必讀的程序設計語言方面的參考書。
第五名:481票 《算法導論》
這本書深入淺出,全面地介紹了計算機算法。對每一個算法的分析既易于理解又十分有趣,并保持了數學嚴謹性。本書的設計目标全面,适用于多種用途。
涵蓋的内容有:算法在計算中的作用,概率分析和随機算法的介紹。書中專門讨論了線性規劃,介紹了動态規劃的兩個應用,随機化和線性規劃技術的近似算法等,還有有關遞歸求解、快速排序中用到的劃分方法與期望線性時間順序統計算法,以及對貪心算法元素的讨論。此書還介紹了對強連通子圖算法正确性的證明,對哈密頓回路和子集求和問題的NP完全性的證明等内容。
第六名:478票 《重構:改善既有代碼的設計》
Martin Fowler寫的《重構Refactoring》主要關于改進現有代碼的設計。這是一個改變軟件系統而不改變代碼的外部行為,卻能提高它内部結構的過程。
《重構:改善既有代碼的設計》(中文版)的核心是一份完整的重構名錄(catalog of refactoring),其中每一項都介紹一種經過實證的代碼變換手法(code transformation)的動機和技術。某些項目如Extract Method和Move Field看起來可能很淺顯,但不要小看它們,因為理解這類技術正是能否順利進行重構的關鍵。
第七名:447票 《人月神話》
這本書為人們管理複雜項目提供了頗具洞察力的見解,既有很多發人深省的觀點,也有大量的軟件工程實踐。書中的内容來自布魯克斯在IBM公司System 360家族和OS 360中的項目管理經驗。
第八名:440票 中文版《設計模式》
這本書結合設計實作例從面向對象的設計中精選出23個設計模式,總結了面向對象設計中最有價值的經驗,并且用簡潔可複用的形式表達出來。書中分類描述了一組設計良好、表達清楚的軟件設計模式,這些模式在實用環境下特别有用。此書适合大學計算機專業的學生、研究生及相關人員參考。
第九名:394票 《計算機程序設計藝術 (第一卷)》
這又是一部經典之作。由著名的計算機科學家教授Donald Knuth編著,并得到行業内衆多頂尖程序員的一緻好評。甚至連比爾蓋茨也對這本書贊譽有加
本書第1卷首先介紹編程的基本概念和技術,然後詳細講解信息結構方面的内容,包括信息在計算機内部的表示方法、數據元素之間的結構關系,以及有效的信息處理方法。此外,書中還描述了編程在模拟、數值方法、符号計算、軟件與系統設計等方面的初級應用。
第10名:364票 《編譯原理》
這本書全面、深入地探讨了編譯器設計方面的重要主題,包括詞法分析、語法分析、語法制導定義和語法制導翻譯、運行時刻環境、目标代碼生成、代碼優化技術、并行性檢測以及過程間分析技術,并在相關章節中給出大量的實例。與上一版相比,本書進行了全面的修訂,涵蓋了編譯器開發方面的最新進展。每章中都提供了大量的系統及參考文獻。
第11名:329票 《Head First 設計模式》
看上去最不像技術的編程書籍!每個頁面都包含塗鴉、圖片以及其他一些吸引眼球的東西。可能給人的印象是一本閱讀起來很輕松的書,但事實上它會讨論編程的一些核心主題——設計模式。
這本書雖然沒有覆蓋所有存在于這個世界的模式,但是會涵蓋所有你可能需要用于解決現實問題的模式。它将幫助你創建功能性的,優雅的,可重用的和靈活的軟件。大多數關于設計模式的書籍談論的是如何實現模式,但這本書的作者同時還解釋了為什麼以及怎麼樣。
寫在最後誠然這些書籍都是對以後的發展和學習有幫助的書籍,不過什麼時間看什麼書,學習怎麼樣的知識點還是需要注意的,畢竟每個時間大家的學習進度和需求都不一樣,适合自己的才是最好的。
這裡也是幫助大家整理了一些c/c 相關的知識點和項目實戰資料,如果你想在大學期間更好的提升你的編程核心能力(内功)不妨從現在開始!
編程學習書籍分享:
編程學習視頻分享:
整理分享(多年學習的源碼、項目實戰視頻、項目筆記,基礎入門教程)
歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比自己琢磨更快哦!
對于C/C 感興趣可以關注小編在後台私信我:【編程交流】一起來學習哦!可以領取一些C/C 的項目學習視頻資料哦!已經設置好了關鍵詞自動回複,自動領取就好了!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!