程序員大牛都在推薦的書籍有哪些
文章大綱
作為一名程序員,隨著工作年齡的增加,工作經(jīng)驗的豐富。日益發(fā)現(xiàn)編程基礎(chǔ)知識的重要性,而不是像一些初級開發(fā)者一樣,比較重視上層開發(fā),不需要過多的關(guān)注一些底層開發(fā)。本文就是針對這樣的情況而寫的。主要是針對大學(xué)計算機(jī)專業(yè)需要學(xué)習(xí)的一些知識作歸納與總結(jié),分享一些高質(zhì)量的書籍與視頻網(wǎng)站。涉及到的書籍也可以通過,我的個人公眾號進(jìn)行領(lǐng)取,我個人的公眾號是卡二條的技術(shù)圈,你只需要回復(fù)“計算機(jī)書籍”即可領(lǐng)取。
書籍大綱
下圖就是整個書籍的大綱,后面推薦的書籍也是針對這個大綱進(jìn)行,會涉及到對應(yīng)的書籍和視頻。總結(jié)下來基本就是計算機(jī)基礎(chǔ)原理、操作系統(tǒng)、編程語言、計算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫、算法與數(shù)據(jù)結(jié)構(gòu)和信息安全這幾個方面的知識點。
基礎(chǔ)書籍
C語言相關(guān)
C程序設(shè)計語言
該書比較簡短,和《C++程序設(shè)計語言》相比,該書更加簡練。同時也是適合有一定的實際經(jīng)驗的人,對于初學(xué)者來說,不是很合適。
C和指針
看書名,可能你會想到這是單獨講C語言中指針的相關(guān)東西,實則不是。它是一本全面的C語言入門書籍,本書的內(nèi)容也需要有一定的C語言基礎(chǔ)。書中包含的了ADT、遞歸、指針和數(shù)組等部分內(nèi)容。
C primer plus
《C primer plus》這本書特別適合作為一個入門書籍。里面不僅僅有理論知識,同時也有很多的練習(xí)題。
網(wǎng)絡(luò)相關(guān)
計算機(jī)網(wǎng)絡(luò)
說到計算機(jī)網(wǎng)絡(luò),首推的就是謝希仁的《計算機(jī)網(wǎng)絡(luò)》。該書一直在更新出版,當(dāng)前的最新版本是第七版。作者也是我國著名的計算機(jī)網(wǎng)絡(luò)專家和教育家,因此從寫作背景來說,含金量就不會低。全書分為9章,比較全面地介紹了計算機(jī)網(wǎng)絡(luò)的發(fā)展與原理結(jié)構(gòu)體系、物理層、數(shù)據(jù)鏈路層(包括局域網(wǎng))、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層、網(wǎng)絡(luò)安全、互聯(lián)網(wǎng)上的音視頻服務(wù),以及無線網(wǎng)絡(luò)和移動網(wǎng)絡(luò)等內(nèi)容。同時各章節(jié)都配有相應(yīng)的試題練習(xí)。
計算機(jī)網(wǎng)絡(luò)自定向下方法
本書是當(dāng)前世界上最為流行的計算機(jī)網(wǎng)絡(luò)教科書之一,采用了作者獨創(chuàng)的自頂向下的方法來講授計算機(jī)網(wǎng)絡(luò)的原理及其協(xié)議,即從應(yīng)用層協(xié)議開始沿協(xié)議棧向下講解,強(qiáng)調(diào)應(yīng)用層范例和應(yīng)用編程接口,使讀者盡快進(jìn)入每天使用的應(yīng)用程序環(huán)境之中進(jìn)行學(xué)習(xí)和“創(chuàng)造”。本書的講解以因特網(wǎng)為例,學(xué)以致用;注重教學(xué)法,深入淺出地重點講解計算機(jī)網(wǎng)絡(luò)的基本原理
HTTP權(quán)威指南
上面兩本書,更多的是針對整個網(wǎng)絡(luò)相關(guān)的知識,很少對某一層的做一個細(xì)致全面的分析。在我們的實際開發(fā)中,可能針對應(yīng)用層的網(wǎng)絡(luò)協(xié)議使用的居多,例如http協(xié)議。HTTP權(quán)威指南就是一本全面分析與總結(jié)HTTP協(xié)議的一本書籍,是每一個程序員必看書籍。
操作系統(tǒng)
UNIX環(huán)境高級編程
本書是被譽(yù)為UNIX編程“圣經(jīng)”的Advanced Programming in the UNIX Environment一書的更新版。在本書第1版出版后的十幾年中,UNIX行業(yè)已經(jīng)有了巨大的變化,特別是影響UNIX編程接口的有關(guān)標(biāo)準(zhǔn)變化很大。本書在保持了前一版的風(fēng)格的基礎(chǔ)上,根據(jù)最新的標(biāo)準(zhǔn)對內(nèi)容進(jìn)行了修訂和增補(bǔ),反映了最新的技術(shù)發(fā)展。書中除了介紹UNIX文件和目錄、標(biāo)準(zhǔn)I/O庫、系統(tǒng)數(shù)據(jù)文件和信息、進(jìn)程環(huán)境、進(jìn)程控制、進(jìn)程關(guān)系、信號、線程、線程控制、守護(hù)進(jìn)程、各種I/O、進(jìn)程間通信、網(wǎng)絡(luò)IPC、偽終端等方面的內(nèi)容,還在此基礎(chǔ)上介紹了多個應(yīng)用示例,包括如何創(chuàng)建數(shù)據(jù)庫函數(shù)庫以及如何與網(wǎng)絡(luò)打印機(jī)通信等。此外,還在附錄中給出了函數(shù)原型和部分習(xí)題的答案。
現(xiàn)代操作系統(tǒng)
在《現(xiàn)代操作系統(tǒng)(英文版第3版)》第3版中,作者深入討論了許多主題,包括:進(jìn)程,線程,存儲管理,文件系統(tǒng),I/O死鎖,接口設(shè)計,多媒體,性能權(quán)衡。以及有關(guān)操作系統(tǒng)設(shè)計的最新趨勢。書中不僅涵蓋了現(xiàn)代操作系統(tǒng)的原理和實踐,而且特別關(guān)注了Linux操作系統(tǒng),WindowsVista操作系統(tǒng)、嵌入式操作系統(tǒng)、實時操作系統(tǒng)以及多媒體操作系統(tǒng)。
計算機(jī)原理
深入理解計算機(jī)系統(tǒng)
本書主要介紹了計算機(jī)系統(tǒng)的基本概念,包括最底層的內(nèi)存中的數(shù)據(jù)表示、流水線指令的構(gòu)成、虛擬存儲器、編譯系統(tǒng)、動態(tài)加載庫,以及用戶應(yīng)用等。書中提供了大量實際操作,可以幫助讀者更好地理解程序執(zhí)行的方式,改進(jìn)程序的執(zhí)行效率。此書以程序員的視角全面講解了計算機(jī)系統(tǒng),深入淺出地介紹了處理器、編譯器、操作系統(tǒng)和網(wǎng)絡(luò)環(huán)境,是這一領(lǐng)域的權(quán)威之作。
數(shù)據(jù)庫
高性能MySQL 《高性能MySQL(第2版)》包含14章和4個附錄,內(nèi)容覆蓋MySQL系統(tǒng)架構(gòu)、設(shè)計應(yīng)用技巧、SQL語句優(yōu)化、服務(wù)器性能調(diào)優(yōu)、系統(tǒng)配置管理和安全設(shè)置、監(jiān)控分析,以及復(fù)制、擴(kuò)展和備份/還原等主題,每一章的內(nèi)容自成體系,適合各領(lǐng)域技術(shù)人員作選擇性的閱讀。

MySQL技術(shù)內(nèi)幕InnoDB存儲引擎
《MySQL技術(shù)內(nèi)幕:InnoDB存儲引擎》一共10章,首先宏觀地介紹了MySQL的體系結(jié)構(gòu)和各種常見的存儲引擎以及它們之間的比較;接著以InnoDB的內(nèi)部實現(xiàn)為切入點,逐一詳細(xì)講解了InnoDB存儲引擎內(nèi)部的各個功能模塊的實現(xiàn)原理,包括InnoDB存儲引擎的體系結(jié)構(gòu)、內(nèi)存中的數(shù)據(jù)結(jié)構(gòu)、基于InnoDB存儲引擎的表和頁的物理存儲、索引與算法、文件、鎖、事務(wù)、備份與恢復(fù),以及InnoDB的性能調(diào)優(yōu)等重要的知識;最后對InnoDB存儲引擎源代碼的編譯和調(diào)試做了介紹,對大家閱讀和理解InnoDB的源代碼有重要的指導(dǎo)意義。
數(shù)據(jù)結(jié)構(gòu)
數(shù)據(jù)結(jié)構(gòu)與算法分析
《數(shù)據(jù)結(jié)構(gòu)與算法分析C++描述>(第3版)是數(shù)據(jù)結(jié)構(gòu)和算法分析的經(jīng)典教材,書中使用主流的程序設(shè)計語言C++作為具體的實現(xiàn)語言。書的內(nèi)容包括表、棧、隊列、樹、散列表、優(yōu)先隊列、排序、不相交集算法、圖論算法、算法分析、算法設(shè)計、攤還分析、查找樹算法、k-d樹和配對堆等。
數(shù)據(jù)結(jié)構(gòu)(C語言版本)
《數(shù)據(jù)結(jié)構(gòu)(C語言版)/清華大學(xué)計算機(jī)系列教材》的前半部分從抽象數(shù)據(jù)類型的角度討論各種基本類型的數(shù)據(jù)結(jié)構(gòu)及其應(yīng)用;后半部分主要討論查找和排序的各種實現(xiàn)方法及其綜合分析比較。其內(nèi)容和章節(jié)編排與1992年4月出版的《數(shù)據(jù)結(jié)構(gòu)》(第二版)基本一致,但在《數(shù)據(jù)結(jié)構(gòu)(C語言版)/清華大學(xué)計算機(jī)系列教材》中更突出了抽象數(shù)據(jù)類型的概念。全書采用類C語言作為數(shù)據(jù)結(jié)構(gòu)和算法的描述語言。
算法
算法導(dǎo)論
《算法導(dǎo)論(原書第3版)/計算機(jī)科學(xué)叢書》全書選材經(jīng)典、內(nèi)容豐富、結(jié)構(gòu)合理、邏輯清晰,對本科生的數(shù)據(jù)結(jié)構(gòu)課程和研究生的算法課程都是非常實用的教材,在IT專業(yè)人員的職業(yè)生涯中,《算法導(dǎo)論(原書第3版)/計算機(jī)科學(xué)叢書》也是一本案頭必備的參考書或工程實踐手冊。
漫畫算法
《算法導(dǎo)論》是國內(nèi)知名的一個程序員大牛編寫而成,全書采用漫畫的形式講解算法的原理、實現(xiàn)方式,讓算法學(xué)習(xí)不再枯燥難懂,非常適合算法新手學(xué)習(xí)的一本書籍。
Java
廖雪峰Java教程
對于學(xué)習(xí)Java的開發(fā)者,非常推薦的一個教程類資源。由淺到深、實時演示的形式帶你學(xué)習(xí)輕松學(xué)會Java編程。
韓順平學(xué)Java
韓順平老師就不用過多介紹了,相信很多同學(xué)學(xué)習(xí)編程都會看過韓老師的課程,韓老師講課的最大亮點就是細(xì)致。這個課程是韓老師最新發(fā)布的Java教學(xué)課程,是一款深入學(xué)習(xí)Java編程知識的不二首選。
Java編程思想
上面分享了兩個有關(guān)學(xué)習(xí)Java語法相關(guān)的知識,這里分享一本有關(guān)Java編程思想的書籍。《計算機(jī)科學(xué)叢書:Java編程思想(第4版)》獲得的各項大獎以及來自世界各地的讀者評論中,不難看出這是一本經(jīng)典之作。本書的作者擁有多年教學(xué)經(jīng)驗,對C、C++以及Java語言都有獨到、深入的見解,以通俗易懂及小而直接的示例解釋了一個個晦澀抽象的概念。本書共22章,包括操作符、控制執(zhí)行流程、訪問權(quán)限控制、復(fù)用類、多態(tài)、接口、通過異常處理錯誤、字符串、泛型、數(shù)組、容器深入研究、JavaI/O系統(tǒng)、枚舉類型、并發(fā)以及圖形化用戶界面等內(nèi)容。這些豐富的內(nèi)容,包含了Java語言基礎(chǔ)語法以及高級特性,適合各個層次的Java程序員閱讀,同時也是高等院校講授面向?qū)ο蟪绦蛟O(shè)計語言以及Java語言的好教材和參考書。
往期推薦
最全編程設(shè)計模式學(xué)習(xí)總結(jié)
Redis哨兵功能全面分析與總結(jié)[實戰(zhàn)操作篇]
