閱讀本文大概需要 3.9 分鍾。
這幾天想起之前的一次面試,對方問我一年看幾本書。
我一年看的書大概在3到10本之間,不過絕大部分都跟計算機技術無關(小說偏多)。很不好意思地回答說:“跟技術有關的,很少”。
之所以不怎么看這方面的專業書,有兩個主要的原因:一是因為當時還沒有這個學習意識,工作之余不是小說就是游戲,要不就是刷刷抖音;二是因為技術書都比較枯燥,簡單瀏覽下,都不是很感興趣。
從去年開始,我自己不斷發生一些好的改變(經歷了某件事),可能在那么一瞬間長大了,也變成熟了。突然間不在喜歡玩游戲,不在沉迷小說(偶爾還是會刷下抖音,玩玩游戲),這些再也對我沒什么吸引力了。得益於對這些東西的不感冒,我擁有了大量可支配的時間,奢侈的將它們全部用在了學習上。
學習中的一項規划就是看書,買了很多書籍,計算機類的,技術類的,心理類的,管理類的等等。書作為一種信息的容器,雖然講心理學的書、講社會學的書跟講編程的書、講計算機技術的書很不一樣,但都有着不少的共同點。
寫這篇文章,希望能跟大家分享一些閱讀過程中的思考和感想。
1、爛書很多
很多程序員買了書不看,不是因為懶,而是因為有些書太爛。
好書有各種各樣的好,而爛書的特征卻幾乎都是相同的,它們的缺點基本上都是一模一樣。
閱讀體驗差。不知道是不是因為想省錢,書的質地跟盜版書有的一拼。書頁泛黃,字體難看,排版糟糕;作者的表達能力低下,連簡潔和准確地講述一個核心概念都做不到,讓人很難有繼續看下去的心情。
邏輯性弱。一本好的書,應該做到章節與章節之間有連貫性,使得閱讀坡度平緩,信息密度才會高。但是很多爛書是東講一點,西談一些,整本書看下來不知所雲。
思想層次低。講解各種著名開源框架、開源組件的書非常多,但是其中很多書都只是在講怎么用,簡直就像精簡版的說明文檔翻譯。其實,把“為什么要用”和“這樣用有什么好處”這兩個問題講清楚,更有價值。
2、好書不少
在所有書當中,好書所占的相對比例肯定不高。但是在絕對數量上,值得我們買回來看、花時間學習的好書卻不少。
如何判斷一本書是不是好書呢?基本上只要花最多半個小時翻一遍,就能確定答案,准確率隨着你閱讀數量的增加而升高。
閱讀體驗好。基本上看完前言和第一章就能知道好不好,就像我們用一個手機上的軟件,只需要很短的時間就知道用戶體驗是不是及格。
邏輯性強。看完整本書,如果章節與章節之間聯系緊密,讀完前一個章節有助於讀后一個章節,基本上可以判斷這是一本有條理的書。
思想層次高。我們看的很多書都是講某一項或某一類具體的技術,但是如果它們在講解技術細節之余還能拔高到更高的層次,提取技術之間的共性,談論技術的思想,則有助於我們更深入理解這些技術,而且在學習其他的新技術時也更為容易。
3、看書的基本方法
在最近看技術書的時間里,我經常會跟之前看非專業書時的閱讀經歷做對比。下面談談我自己認為在閱讀技術書籍時可以借鑒的幾個基本方法。
一、瀏覽。現在我們都基本是在網上買書,所以可以先看看別人的評論和網站給出的目錄、書摘。在一輪篩選完之后,把買回來的書都快速看一遍。看第一遍的時候要快,不要看得太仔細。如果是爛書,立刻扔在一邊或者申請退貨。如果是好書,你就能有一個大概的印象,有助於進行下一個環節。
二、細讀。在把書瀏覽過一遍之后,我們可以開始認真地讀,閱讀速度也要相應地降下來。在閱讀的過程中,我會習慣於把認為重要的句子和內容划線,也會把暫時看不明白的部分做上記號。這不僅可以強迫自己保證閱讀的投入程度,還對進一步的學習有幫助。
三、研究。能經過篩選進入到這個環節的書已經相對不多了,基本上能確定這是一本對你來說非常重要非常有用的書。我讀書一般最多讀三遍,在讀第三遍的時候花時間是最多的,而且遠比前兩遍要多得多。這個時候要做筆記,把你認為重要的內容都摘抄下來,或者裁切下來。雖然現在筆記類應用很多,例如印象筆記、One Note和Bear等,但是我還是比較推薦大家考慮使用紙質筆記本來做讀書筆記,記憶效果特別顯著。
結束語
程序員很多都有看技術博客的習慣,而且也有很多優秀的博客達人為我們提供優質的內容。但是,書籍作為另一種信息容器,跟博客這種形式的信息容器是有本質區別的,而且能發揮的作用也不一樣。
下面推薦幾本我認為值得讀的好書:
-
《未來簡史》 尤瓦爾·赫拉利
-
《暗時間》 劉未鵬
-
《深入理解Java虛擬機》 周志明
-
《架構探險-從零開始寫Java Web框架》 黃勇
-
《架構探險-輕量級微服務架構》(上下冊) 黃勇
-
《MyBatis從入門到精通》 劉增輝
前兩本不是專業書,但是我還是推薦程序員們都看一看,非常值得一讀。剩下的都跟Java有關,因為我本身是Java開發方向的。
書單純屬拋磚引玉,希望你們可以在評論區說一說自己認為好的技術書有哪些。
·END·
路雖遠,行則必至
本文原發於 同名微信公眾號「程序員的成長之路」,回復「1024」你懂得,給個贊唄。
微信ID:cxydczzl