下面列了我讀過的一些編程相關的書籍,寫了一些對書的印象,都是我的觀點。書名後是我我的對書的推薦強烈度打的分(5分滿分),都是拍腦殼打的。css
我比較習慣讀紙質書,買書也比較謹慎,踩的坑少(圍笑),分打得可能比較高一些。前端
《Linux內核設計與實現》5分:全書都在講 Linux 內核的設計思想,實現並很少,做爲操做系統的入門書很是適合。沒有不少複雜的接口,思想也容易理解。對我我的來講,解開了我不少對操做系統運行的疑惑,也對編程頗有借鑑意義。建議對操做系統不清楚的早讀這本書。(2018)linux
《Unix環境高級編程》4分:著名的 APUE,編程剛入門時看的,當時沒什麼基礎,詳細內容忘得差很少了,印象很深的就是文件操做接口的參數不少。書裏介紹了不少操做系統經常使用接口,新手能夠大概看一遍對系統提供的接口有個印象。我準備再讀一遍。(2016)程序員
《Unix網絡編程 卷二 進程間通訊》5分:把 UNP 放在這裏是由於卷二講了不少系統內部的 IPC,一直在用的 unix domain sockets 是真神器,推薦後端工程師必定要看這本書。(2016)web
《深刻理解計算機系統》3分:好像是一本用來做課本的書,全書確實講了整個計算機系統,以操做系統爲界分爲上中下三篇,上篇講操做系統如下,包括計算機體系結構、機器級的信息和存儲體系等(略翻過的,看得有點懵),中篇講操做系統的進程及內存管理,下篇則偏向於操做系統之上的內核接口和併發編程的相關知識。比較佩服用本書做課本的學校,一本書講了咱們四本書的知識。但總的來講,收穫不大,上篇對程序員透明能夠很少做過多瞭解,中篇不如《Linux內核設計與實現》全面,下篇則不如《Java併發編程實戰》和《UNP》等書,全而不精,不太推薦看。(2017)算法
《性能之巔》5分:著名性能大神 Brendan Gregg 的大做,600 頁的大部頭,不過做爲非原理性書籍,知識點並不「深奧」。這本書從內存、CPU、網絡等各個方面總結了排查性能問題的方法,由名詞概念到 Linux 命令再到結果分析,把本來很是散亂的知識系統化了。排查性能問題以前,若是讀過這本書,應該會少走不少彎路。(2019)shell
《樹莓派開始,玩轉Linux》3分:由《協議森林》關注了做者。買這本書由於看目錄以爲從硬件到系統講得都很全,到手以後發現知識點全則全矣,深度卻不夠,像系統中極重要的」虛擬內存」的概念,本書只介紹了兩三頁,因爲我以前對系統知識有了必定的瞭解,因此會以爲收穫不夠。不過算是很系統的書了,適合系統初學者讀,對我來講,等玩起樹莓派後能夠做爲工具書。(2018)數據庫
《TCP/IP詳解 卷一》5分:從鏈路層到傳輸層把各類網絡協議都介紹了一遍,TCP 的各類實現也講得很是細,新手能夠略翻一下理解一下網絡。對應用層協議熟悉了以後再回過來仔細讀一下本書。(2016)編程
再讀:4分 又帶着一些問題更深刻細節翻了一遍,對比看過的各類博客,細節上不輸,全局觀上更是完勝,只是少了些開發中的具體案例和應用。不過書中有不少實現算法之類的東西,因爲用不到,看過以後就沒什麼印象了,可能須要存放起來做爲工具書了。(2019)後端
《Unix網絡編程 卷一 套接字聯網API》4分:UNP。講了不少網絡 socket 相關接口,有不少客戶端和服務器代碼實現,一樣我還得再讀一遍。(2016)
《Web性能權威指南》3分:書的重點是性能,分別從傳輸層協議、無線網絡和HTTP協議講怎麼作性能優化,不過全都是理論。最後還介紹了瀏覽器、websocket 和 WebRTC,最後一個作 B/S 的真心沒聽過,也算開了下眼界。(2017)
《構建高性能Web站點》4分:全書也在重點講 Web 性能,不過更偏向於服務端架構和實踐,如緩存的使用、數據庫性能優化。書中列舉了不少實用的方案,也對不一樣的方案使用 AB 和 strace 進行了充分的測試對比。中級後端工程師應該早點讀這本書。(2017)
《Redis設計與實現》4分:從底層介紹了 Redis 多種數據結構的設計與實現,還有多種配套策略的實現,如數據持久化、集羣等。能夠說對 Redis 全部部分的設計都介紹得很清楚,畢竟是做者是分析過所有源碼的。推薦 Redis 運維或對 Redis 的實現感興趣的讀。(2017)
《MySQL技術內幕:Innodb存儲引擎》4分:如副標題,全書都在講 Innodb 存儲引擎。經過各個模塊的設計實現,再給出咱們使用 Innodb 時的須要注意的點和優化方案。推薦中級開發工程師讀。(2017)
《C Primer Plus》4分:C 語言入門的推薦書,主要是 C 的語法,詳細而權威,沒什麼好說的。(2017)
《Java 核心技術 卷I》3分:確實是由淺入深的一本書,但感受書裏深淺知識在不停交錯,書裏 Swing 相關的東西篇幅還挺大,並且有不少跟 C++ 的對照,最主要的是翻譯很奇怪地讓我以爲有些句子很難讀得通。不過也書裏講解得內容仍是挺豐富的,通讀的話會學到很多東西。(2018)
《Java併發編程實戰》5分:這本書介紹 Java 併發編程很是全面,從內置關鍵字、鎖、同步容器、同步工具類引入併發編程的基礎知識,又介紹了 Executor、ThreadPool 等成熟的併發編程框架,而後又從死鎖、性能、測試等方面來思考併發編程的安全性,最後經過顯示鎖、各類高級線程同步工具的對比、Java 線程模型等高級主題來深刻理解併發編程。由淺入深,中級到高級都能從中有所收穫。我的認爲,Java 開發者至少應該讀一遍,對併發編程有個總體的印象。(2018)
《深刻理解Java虛擬機》5分:做爲 JVM 語言,更偏向於 Java 本質的內容在於其虛擬機。本書相對於我看過的理論書偏實戰一些,主要講了 Java 內存模型、GC算法,字節碼及虛擬機加載、執行字節碼和優化效率的全過程。國人的書沒了翻譯味讀着很舒服,理論講得很清晰,特別是書裏的一些調試案例很是贊。對於剛接解 Java 的小白來講看本書有些深,且 Java 的封裝性讓這些知識對程序員來講都是透明的,推薦想對 Java 有深刻了解的中級來讀。(2018)
《PHP和MySQL Web開發》1分:剛開始學PHP時,看過一部網絡教學視頻後看的,當時的感受是真的簡單,看完後收穫很少。若是你也是初學者,建議你仍是省點錢,看看視頻或文檔擼一下代碼來得實在。(2015)
《JavaScript高級程序設計》5分:紅寶書,Web 入門時看的,Js、Dom講得很詳細了,當時準備入前端坑時讀了一遍,雖然有些朦朧,仍是感受收穫很大。Js入了門的同窗應該趕快讀一下這本書,而且有幾章還得跟着搜索引擎多看幾遍。(2015)
《Linux Shell腳本攻略》3分:書的內容挺充實的,把 linux 內的各類 bash 命令都介紹到了(好像沒有軟件包安裝相關命令),也提供了不少實例來解析命令。問題是介紹 shell 腳本相關技巧介紹較少,好比函數傳數組參數這些常見的坑就沒講到,瞭解不少 bash 命令腳本也不必定能寫得好啊。並且定位比較尷尬,不像鳥哥的私房菜(只看過前幾章),由淺到深總體熟悉 linux,本書是分模塊來說解的,ls、cd
等常見命令後面才提到,因此它不太適合新手看,而對於比較熟悉 linux 命令的人來講,能學到的知識又較少。總之本書適合用來查漏補缺或當工具書。(2018)
《Effective Java 第二版》4分:我看過的惟一一本介紹語言的「進階」書,可能 Java 確實有些複雜吧。書裏 Java 1.6 及以前版本常見的各類坑都講清楚了,看完頗有收穫,推薦在瞭解完 Java 語法後就讀。(2018)
《Sprint Boot 實戰》1分:首先在 Spring-Boot 裏介紹 Grails、Actuator,不瞭解很少做評價,但總體來看像是不少篇博客堆疊出來的,沒有層次感。其次 200 頁的書居然有 50 頁是 Spring-Boot 包-特性速查,這些東西徹底能夠放在網站上,只用一個連接就搞定了,還便於實時更新。最後翻譯後的版式我必須吐槽,中文和英文單詞之間不加空格看着真的難受。(2019)
《數據結構與算法分析 - C語言實現》3分:做爲一個數學渣,對算法有本能的恐懼,這本書是咬着牙讀下去的,還跳過了不少部分。書很生硬,沒有形象的比喻,經過一堆堆的代碼和數學公式去理解算法真的挺不容易的。(2016)
《Head First 設計模式》4分:跟外面的那些技術書籍一點也不同,全書充滿了插圖,每個設計模式都經過一個浮誇的故事來說(外國人嘛)。文中代碼中用 Java 實現,不過都是最基本的語法。好像只寫了 16 個設計模式?不過我以爲用來學習設計模式徹底 OK。(2017)
《代碼大全 第二版》4分:中文名是真的俗,代碼百貨?不過書不是代碼展覽館,而是教人怎麼寫出優良的代碼的。可能我我的一直對代碼質量比較在乎,讓我眼前一亮的地方不是特別的多,不過不能否認書真的不錯,建議新手早讀一遍。(2017)
《重構:改善既有代碼的設計》2分:在一次重構以前買來看的,講得是對小塊代碼的重構方式,全書就像一個整齊排放的貨架,上面全是對一些代碼重構方式的抽象,列得讓人有點懵,若是新手看這本書並對照着重構代碼的話,我以爲效果應該不會太好(委婉)。(2017)
再讀:2分 試圖再讀一遍,結果讀了一半就堅持不下去了,總結了一下這本書不合我口味的地方:不少重構方法的具體作法寫得太詳細太傻瓜式了,例子佔大量篇幅又讓我以爲沒幹貨。可能看一遍目錄,遇到一眼看不明白的方法進去看內容前一兩段或總結會比較好。(2018)
《黑客與畫家》4分:整體感受比指望差一些。我把內容分爲三部分:因爲中美環境不一樣,前面講」書呆子」特質的部分我沒有太大共鳴;中間講財富的部分很精彩,讓我以爲很是驚豔;後面講編程語言的部分更像是硬貼在書後面的,雖然有所感悟,但卻讓人以爲有些突兀(我指望的不是此類內容);總的來講,是一本讓我挺有收穫的書。(2018)
《思考,快與慢》4分:網絡上廣泛將它分類爲經濟學書籍,實際上我感受本書大部分篇幅都是心理學,從一開始的系統1和系統2,到對咱們各類選擇的分析(我印象最深入的是怎樣克服系統1的影響選擇投資方式),再到最後由」幸福程度」引出的峯終定理,給人提出了各類思考的方向和可能性,可能思考得多了以後,也能幫我矯正一些想法吧。(2018)
《烏合之衆.馮克利譯》4分:這本書是大衆心理學研究的經典著做,從一般意義上來講,它對我的並非一本很是「有用」的書,但做爲社會動物,咱們不可避免地會經常陷入人羣中,這本書可能會幫助你跳出人羣看本身和他人,新的視角可能會有新的感悟。(2019)
書還在讀,列表也會增長,以前讀過的書還可能會再讀一遍寫一些新的感覺,歡迎關注。