1. Architecture & Design
1.1《代碼整潔之道》
Fundamental
行文簡潔易懂横殴,抽點時間就能過完一章喊积。雖然看起來不艱難,但內(nèi)容實則相當重要楞遏,畢竟總免不了維護別人的代碼和留下一堆代碼給別人維護鳍徽,代碼可讀性差就不能愉快地相處了资锰。結(jié)合《重構(gòu)》一書,改了一堆別人和自己以前的代碼阶祭,維護省心绷杜,閱讀方便,誰用誰知道濒募。
1.2《大型分布式網(wǎng)站架構(gòu)設(shè)計與實踐》
SOA接剩,基礎(chǔ)設(shè)施(緩存,持久化萨咳,MQ懊缺,Lucene等),安全架構(gòu)培他,監(jiān)控與分析
Medium
有較詳細的示例與講解鹃两,內(nèi)容較多,當然每個主題都不可能深入探討舀凛,作為入門的書籍方便有個全局的了解俊扳。
1.3《Effective Java(第2版)英文版》
Advanced
國內(nèi)出版的英文版本,窮人的最愛猛遍。就算沒有看過書的馋记,肯定也聽說過里面的某些Item号坡,Code Review的時候扔一條出來殺傷力最強,當然正途還是指導平日的設(shè)計和開發(fā)梯醒,看源碼的時候想一想為什么要這樣設(shè)計宽堆。作者本人也表示不需要從頭往后看,找自己感興趣的主題跳著看就行茸习。雖然有些交叉引用畜隶,不過并沒有明顯的順序和上下文要求。然而懶癌患者還是按計劃每天看上一條号胚,畢竟TODO List是第二生產(chǎn)力嘛籽慢。
2. Methodology
2.1《大數(shù)據(jù):互聯(lián)網(wǎng)大規(guī)模數(shù)據(jù)挖掘與分布式處理》
數(shù)據(jù)挖掘的概念、算法猫胁,MapReduce箱亿,相似項,數(shù)據(jù)流分析弃秆,PageRank
Advanced
雖說看英文原版是最好的极景,但是原版實在太貴了。這本還算翻譯得可以的了驾茴。側(cè)重理論與算法,講解由淺入深氢卡。奈何已經(jīng)離開學校太久了锈至,看到數(shù)學和算法就腦仁疼,有些地方只能可恥地跳掉了译秦。
3. Coding Practice
3.1《Java程序性能優(yōu)化》
Java編程與JVM最佳實踐
Medium
寫了兩年Java(大半時間渾渾噩噩)再看這種最佳實踐類的書峡捡,很多地方都能找到共鳴,當然其中很多概念都已經(jīng)接觸過了筑悴,再看一遍全當系統(tǒng)地鞏固一下们拙。剛?cè)腴T的時候看看能少走好多彎路也說不定,可惜那個時候都沒啥啃書修煉的意識阁吝。不過相關(guān)主題都有對應的更為深入的書砚婆,比如Java并發(fā)編程實戰(zhàn),深入理解JVM等等突勇。
3.2《深入理解Java虛擬機:JVM高級特性與最佳實踐》
JVM內(nèi)存管理装盯、監(jiān)控、調(diào)優(yōu)甲馋,類加載埂奈,執(zhí)行引擎
Advanced
圖書館里借了第一版,沒看完到期歸還定躏,然后自己買了第二版的账磺,從JDK6升級到JDK7芹敌,另外補充了一部分內(nèi)容。內(nèi)容較為深入垮抗,側(cè)重原理和底層細節(jié)氏捞。一開始以為是翻譯的外文,然后才發(fā)現(xiàn)是國內(nèi)的書借宵,很是驚喜幌衣。當然把官方的Java Language Specification和JVM Specification看一遍效果只會更好,不然啃這本書也是不錯的壤玫。如果能附上相關(guān)術(shù)語的英文原文就更好了豁护,便于與官方文檔相互參照。
3.3《Java并發(fā)編程實戰(zhàn)》
Advanced
Java并發(fā)方面的經(jīng)典書籍欲间,不看不能愉快地做同事系列楚里,如果你維護過帶坑的多線程代碼就知道不好好學習強行并發(fā)的酸爽了。
4. Linux and OS
4.1《循序漸進Linux 第2版 基礎(chǔ)知識 服務器搭建 系統(tǒng)管理 性能調(diào)優(yōu) 虛擬化與集群應用》
Fundamental
手把手教你搭建服務器系列猎贴,入門一類的班缎。優(yōu)點是比較新,用的CentOS7她渴。
4.2《鳥哥的Linux私房菜:基礎(chǔ)學習篇(第3版)》
Linux系統(tǒng)的基本知識达址,命令和腳本,另有部分硬件和操作系統(tǒng)的基本知識
Medium
鳥哥系列聲名遠揚趁耗,早看早超生系列沉唠。說是基礎(chǔ)學習真的會跟你講很基礎(chǔ)的東西。里面示例詳細苛败,文風有如親臨嘮嗑教學現(xiàn)場满葛。缺點是技術(shù)和概念都比較老了(2010年),新出的第四版目前只有臺版罢屈。不怵繁體的同學也可以去網(wǎng)站上看更新:http://linux.vbird.org/嘀韧。
4.3《深入Linux內(nèi)核架構(gòu)》
Advanced
看過概述部分就覺得往下越來越艱難了,果斷棄坑缠捌。如果不是急切需要掌握的東西锄贷,啃不動就先扔開,過個一年半載再撿起來好了曼月,畢竟時間和精力都是有限的肃叶。
PS:分類參考了下ThoughtWorks的讀書雷達,準備根據(jù)它推薦的書再列個2017年的書單十嘿。
總結(jié)
1. 書非借不能讀也因惭,圖書館里的看得倒是相對及時,自己買的反而在書架上吃灰绩衷。果然Deadline才是第一生產(chǎn)力蹦魔。
2. 之前準備了十張書簽作為信號量激率,實際發(fā)現(xiàn)每本書都看一點,三五天才能繼續(xù)上次的節(jié)點勿决,非常浪費乒躺。可見并發(fā)啃多本書并沒有好處低缩,不如專攻一到兩本嘉冒,主題互有參照更佳,理論結(jié)合實踐最好咆繁。
3. 以前的學習方式是代碼中遇上什么問題再去解決讳推、深挖,最后了解到的只是零散的點玩般,只有在別處碰到的時候才會:“哦银觅,這個我之前遇到過”。而真正能讓人提升的卻是知識架構(gòu)的豐富坏为,學了一堆卻不能及時回想究驴、融會貫通的知識點好比沒有索引的數(shù)據(jù)庫,實際并沒有多大作用匀伏。所以后來微信和零散博客都看得少了洒忧,重心放在書和官方文檔上」坏撸看過的東西會慢慢織成一張網(wǎng)熙侍,無論是聯(lián)想已有記憶還是了解新知識,有如開掛摧找。