程序員書庫(ID:OpenSourceTop) 整編
書單來自:https://github.com/CyC2018/CS-Notes/blob/master/other/LEARNING.md


近日,在GitHub上發現一個關於面試經驗的好項目,該項目是由我國的一位程序員創建的,目前已經獲得45295個Star,該項目作者經過一年左右的複習努力,參加的面試都通過了,斬獲了BAT、華爲等大廠的offer


斬獲BAT offer的大神,都讀了哪些書


於是,這位大神就將自己面試經驗整理出來,和大家一起分享,這裏我們主要羅列了他分享的計算機相關的書籍,供大家參考:


算法


1、《算法(第 4 版)》


斬獲BAT offer的大神,都讀了哪些書


這是一本算法領域的經典參考書籍,使用 Java 實現,但是不會涉及很多 Java 高級語法,因此也適合其它語言使用者學習。書中涉及常用數據結構和算法,建議認真學習。Coursera 上有配套視頻課程可學習:Algorithms


2、《數據結構》


斬獲BAT offer的大神,都讀了哪些書


按照面向對象程序設計的思想,根據作者多年的教學積累,系統地介紹各類數據結構的功能、表示和實現,對比各類數據結構適用的應用環境......書中採用C++實現,讀者還能結合配套視頻觀看學習(視頻地址:https://www.xuetangx.com/courses/course-v1:TsinghuaX+30240184+sp/about)


3、《劍指 Offer 題解》


斬獲BAT offer的大神,都讀了哪些書


剖析了50個典型的程序員面試題,從基礎知識、代碼質量、解題思路、優化效率和綜合能力五個方面系統整理了影響面試的5個要點。基本基本涵蓋了面試中出現的高頻算法題,刷這本書的性價比很高。原書使用 C++ 實現,如果你想看Java實現,推薦閱讀劍指 Offer 題解(地址:https://github.com/CyC2018/CS-Notes/blob/master/docs/notes/%E5%89%91%E6%8C%87%20offer%20%E9%A2%98%E8%A7%A3.md)


4、《程序員代碼面試指南:IT 名企算法與數據結構題目最優解》


斬獲BAT offer的大神,都讀了哪些書



這是一本程序員面試寶典!書中對IT名企代碼面試各類題目的最優解進行了總結,並提供了相關代碼實現。左程雲的算法書,除了算法題之外,還有一些海量數據分析的題目很值得看。適合當做 Leetcode 的輔助書籍,對一些題目講解的不錯。如果覺得書本不錯的話,也可以看下他的算法課程


5、《挑戰程序設計競賽》


斬獲BAT offer的大神,都讀了哪些書


世界頂級程序設計高手的經驗總結,分爲準備篇、初級篇、中級篇與高級篇4章。一些大廠可能會問到一些簡單 ACM 題目,所以這本書也值得看一部分內容,比如線段樹、網絡流等。


計算機網絡


6、《計算機網絡:自頂向下方法》


斬獲BAT offer的大神,都讀了哪些書


適合入門,推薦閱讀前面四章內容。本書採用自頂向下的方法講解計算機網絡的原理和協議,出版以來已被幾百所大學和學院選用,是業界最經典的計算機網絡教材之一。


7、《計算機網絡》


斬獲BAT offer的大神,都讀了哪些書


大部分學校的教材,內容還是很不錯的,全書分爲10章,比較全面系統地介紹了計算機網絡的發展和原理體系結構、物理層、數據鏈路層、網絡層、運輸層、應用層、網絡安全、因特網上的音頻/視頻服務、無線網絡和下一代因特網等內容。可以當做上一本書的輔助書籍,結合着看。


8、《TCP/IP 詳解 卷 1:協議》


斬獲BAT offer的大神,都讀了哪些書


是一本完整而詳細的TCP/IP協議指南,TCP/IP 是網絡中最重要的一部分,也是面試中常問的,所以這本書很值得看。


9、《UNIX 網絡編程 卷 1:套接字聯網 API》


斬獲BAT offer的大神,都讀了哪些書



這本書(UNP)和 UNIX 環境高級編程(APUE)被稱爲騰訊的敲門磚,應該說 C++ 崗位的同學都應該學習一下,Java 或者其它崗位的同學倒是沒那麼高的要求。不過這兩本是大部頭,從頭看到尾是不現實的,適合當做工具書,碰到問題的時候再去查找書中的內容。然後對於面試中經常問到的重點知識,也適合看看這本書的內容,而不是背網上所謂的面試答案。


10、《圖解 HTTP》


斬獲BAT offer的大神,都讀了哪些書


HTTP 也是網絡中非常重要的部分,這本書很容易看懂,創建者還有總結比較,查看更多本書的介紹可以點擊查閱:


操作系統


11、《現代操作系統》


斬獲BAT offer的大神,都讀了哪些書


本書是操作系統領域的經典之作,書中集中討論了操作系統的基本原理,推薦重點閱讀一下 進程與線程、死鎖、存儲管理 章節。


12、《深入理解計算機系統》


斬獲BAT offer的大神,都讀了哪些書


沒看完這本書不敢說自己計算機基礎紮實,可以當做計算機導論來看,涉及方方面面的內容。很佩服作者能把這些內容寫的這麼通俗易懂,閱讀這本書真是一種享受。不過不適合短期內提升,要是急着應付面試的話可以先挑一些內容看看。


13、《UNIX 環境高級編程》


斬獲BAT offer的大神,都讀了哪些書


和 UNP 類似,都是 C++ 崗位必備書籍。書中除了介紹UNIX文件和目錄、標準I/O庫、系統數據文件和信息、進程環境、進程控制等方面的內容,還在此基礎上介紹了多個應用示例,包括如何創建數據庫函數庫以及如何與網絡打印機通信等。


14、《Linux 多線程服務端編程》


斬獲BAT offer的大神,都讀了哪些書


同樣推薦C++崗位的同學閱讀,本書主要講述採用現代C++ 在x86-64 Linux 上編寫多線程TCP 網絡服務程序的主流常規技術,重點講解一種適應性較強的多線程服務器的編程模型,即one loop per thread。


15、《Unix/Linux 編程實踐教程》


斬獲BAT offer的大神,都讀了哪些書


本書通過解釋Unix的工作原理,循序漸進地講解實現Unix中系統命令的方法,讓讀者理解並逐步精通Unix系統編程,進而具有編制Unix應用程序的能力。適合作爲C++ 崗位的實踐書籍,在寫個人項目之前建議先看一下這本書。


16、《鳥哥的 Linux 私房菜》


斬獲BAT offer的大神,都讀了哪些書


適合當做入門書籍,通俗易懂,不過太過通俗有點囉嗦了。後臺崗位對 Linux 的基本使用還是要有一定了解,再重點看看文件系統的實現原理,還有一些 Shell 命令。


17、《The Linux Command Line》


斬獲BAT offer的大神,都讀了哪些書


這本書比鳥哥的書簡潔很多,書中介紹如何生存在 Linux 命令行的世界。不像一些書籍僅僅涉及一個程序,比如像 shell 程序,bash。 這本書將試着向你傳授如何與命令行界面友好相處。 它是怎樣工作的? 它能做什麼? 使用它的最好方法是什麼?(中文版地址:http://billie66.github.io/TLCL/book/)


數據庫


18、《MySQL 必知必會》


斬獲BAT offer的大神,都讀了哪些書


學習數據庫最好先學一下 SQL 語句,而這本書主要講解這方面內容。書中從介紹簡單的數據檢索開始,逐步深入一些複雜的內容,包括聯結的使用、子查詢、正則表達式和基於全文本的搜索、存儲過程、遊標、觸發器、表約束,等等。


19、《高性能 MySQL》


斬獲BAT offer的大神,都讀了哪些書



這本書是mysql 領域的經典之作,擁有廣泛的影響力,書中對 MySQL 做了很好的講解,後臺崗位的話運維相關的內容可以不看。


20、《MySQL 技術內幕》


斬獲BAT offer的大神,都讀了哪些書



本書從源代碼的角度深度解析了InnoDB的體系結構、實現原理、工作機制,並給出了大量最佳實踐,能幫助你係統而深入地掌握InnoDB作爲國內唯一一本關於InnoDB的專著,更適合後臺崗位的同學看。


21、《Redis 設計與實現》


斬獲BAT offer的大神,都讀了哪些書


Redis 作爲內存型鍵值對非關係型數據庫,主要作爲緩存使用。這本書對 Redis 實現原理做了講解,推薦閱讀字典、跳躍表、過期機制、持久化、事件、複製、Sentinel、集羣、發佈與訂閱、事務。當然有時間的話推薦都認真閱讀以下。


22、《Redis 實戰》


斬獲BAT offer的大神,都讀了哪些書


本書深入淺出地介紹了Redis的5種數據類型,並通過多個實用示例展示了Redis的用法。相較而言,這本書偏實踐,上本書偏實現原理,兩本書最好結合着看。


23、《大規模分佈式存儲系統》


斬獲BAT offer的大神,都讀了哪些書



本書是分佈式系統領域的經典著作,由阿里巴巴高級技術專家“阿里日照”(OceanBase核心開發人員)撰寫,涉及分佈式場景下的一些存儲系統,分佈式非常重要。


設計模式


25、《Head First 設計模式》


斬獲BAT offer的大神,都讀了哪些書


這是一本很好的一本設計模式入門書籍,可以把常見的幾種設計模式看看,比如單例模式、幾個工廠模式、觀察者模式、MVC。


系統設計

25、《大型網站技術架構》


斬獲BAT offer的大神,都讀了哪些書


非常好的一本架構入門書籍,方方面面都講解得通俗易懂。


26、《從 Paxos 到 Zookeeper》


斬獲BAT offer的大神,都讀了哪些書


本書從分佈式一致性的理論出發,向讀者簡要介紹幾種典型的分佈式一致性協議,以及解決分佈式一致性問題的思路,其中重點講解了Paxos和ZAB協議,適合作爲分佈式的入門書籍。


27、《微服務設計》


斬獲BAT offer的大神,都讀了哪些書


本書全面介紹了微服務的建模、集成、測試、部署和監控,通過一個虛構的公司講解了如何建立微服務架構。


不知道這些書你都看過沒有呢?如果沒有,趕緊根據自己的需求,趁2019年讀起來吧。

相关文章