「Android第一書」做者郭霖:用心作事,結果天然水到渠成

本文僅用於學習和交流目的,不表明圖靈社區觀點。非商業轉載請註明做譯者、出處,並保留本文的原始連接:http://www.ituring.com.cn/Art...程序員

訪談嘉賓:

郭霖,Android軟件開發工程師。從事Android開發工做6年,有着豐富的項目實戰經驗,負責及參與開發過多款移動應用與遊戲,同時仍是LitePal開源框架的做者,對Android系統架構及應用層開發有着深刻的理解。 編程

2013年3月開始,在CSDN上發表Android技術相關博文,很快得到了大量網友的好評。目前博客訪問量已超過500萬次,評論超過10000條。榮獲CSDN認證專家,並被連續評選爲CSDN 201三、201四、2015年度博客之星。設計模式

博客: http://guolin.tech微信

訪談內容:

很是有幸,再次請到「Android第一書」的做者郭霖來到圖靈訪談作分享!我知道《第一行代碼》在技術書界可謂是「叫好又叫賣」,很是成功。當時寫書的時候,沒有擔憂過本身的辛苦付出,可能根本得不到應有的回報嗎?架構

其實,在準備開始寫書以前,我就瞭解到技術圖書因爲受衆面窄等方面的緣由,一般不太好賣。所以,準確來說,當時我並無考慮過這本書會不會賣不出去等方面的問題。我決定去寫《第一行代碼》純粹是由於本身一直是一個很愛書的人。知道有機會寫一本書的時候,我固然也是絕不猶豫地想要抓住這個機會。能出版一本我本身寫的書,對我來講,是具備至關大的意義的,至於它到底會不會大賣,其實並非我當時考慮的首要問題。框架

最近新出的《第一行代碼(第2版)》也將上市。預售的2000本簽名書不到半天就被搶完。《第一行代碼》這麼受歡迎,它的成功對你產生了哪些生活和技術上的改變?
佈局

正如剛纔所說,我其實並無刻意指望過《第一行代碼》可以有多麼多麼成功,對於我而言,我只想單純地當一個好做者,寫一本好書。所以,對於《第一行代碼》的每一處細節我都很是用心地去把控,我也但願讀者們在閱讀這本書的時候能夠看得出個人用心。至於它後來的大賣,我以爲是水到渠成的事情,由於當你真正用心去作了這件事,天然而然也就會獲得你們的承認。《第一行代碼》的成功並無對我產生特別的改變(我以爲暫時尚未),我依舊按照過去的工做規律繼續工做,仍然堅持着寫博客的習慣,整體而言,我仍是那個我吧。 學習

《第一行代碼》的成功離不開堅持寫技術博客的習慣,包括堅持更新你的微信公衆帳號。我真的很佩服你的這份堅持。這份堅持爲你帶來了哪些人生上的收穫?人工智能

確實,堅持真的是一件很是不容易的事情。從2013年開始,堅持寫到如今,差很少有快四年的時間了,雖然如今因爲工做繁忙的緣由,更新頻率比之前低了不少,但我仍是一直堅持在寫。微信公衆號大概是從今年五月份開始正式運營的,一直維持着每一個工做日推送一篇技術文章的頻率。其實,你們對這種堅持分享的精神都是看在眼裏的,我也收穫了廣大程序員們的支持,這對我來講應該是最大的收穫吧。spa

固然,除了堅持分享的精神之外,文章的質量也是很是重要的,無論是寫博客也好、寫書也好,我對於本身所寫內容的質量要求都很是高,不會用低質量的文章來濫竽充數,長此以往,也贏得了你們的信任吧。因此,此次《第一行代碼(第2版)》剛開始預售的第一天就被搶購一空,我以爲主要仍是要感謝你們對個人支持和信任。

除了知識的系統全面和科學佈局外,我相信語言的趣味性也是本書的一大特點。生活中你應該也是個頗有趣的人?

我以爲可能不是。現實生活中的我更像是一個「工做狂」,喜歡把大量的時間花在工做上。我不太喜歡線下活動,能避免的活動和聚會其實我都會盡可能推掉。但若是真是要參加一些聚會的話,我以爲我還算是一個比較健談的人,在聚會上我歷來不會和別人聊技術,更多的是一些天南海北的事情,由於我平時還喜歡看不少非技術類的書,瞭解各類技術圈之外的事情。若是要說我是一個頗有趣的人,我以爲還差得有點遠。

能把枯燥、陌生的知識闡述得清晰、有趣,跟紮實的知識功底分不開。平時,你是如何學習新知識,並加之內化的?

確實,我認爲學習能力是衡量一我的綜合能力時很是很是重要的一點,尤爲是在科技研發這個行業。由於技術的更新換代實在是太快了,你能學會什麼要比你如今會什麼更加劇要,這也是不少大公司喜歡招98五、211學生的緣由,名牌大學的學生,學習能力一般都會比較強。

對於我本身而言,不少時候都要研究比較前沿的技術知識,所以,閱讀國外的技術資料對我來講就是一件很重要的事情。好在我從小英語就比較好,這方面給了我很大的幫助。只看資料還不夠,若是想要很好地消化,還必須本身親手多作試驗才行,試得多了天然也就理解得深入了,這個時候知識才成了本身的東西。這句話也是我想要對全部看《第一行代碼》的讀者們說的,若是隻是將書中全部的內容看上了一遍就以爲本身都學會了,我以爲仍是有些膚淺。只有真正將書中的例子全都本身敲上一遍,並嘗試着思考若是我不這樣寫,換一種寫法會是什麼效果?我以爲這樣才能理解得更加深入。

短短兩年內,Android操做系統經歷了5.0、6.0、7.0的飛速升級。你怎麼看待這一現象?

其實,我以爲這是Google的一種策略。5.0系統確實有了很是巨大的升級,能夠說是Android系統根本性的改變,由於運行環境從Dalvik變成了ART,同時還支持了手表、汽車、電視等系統。可是6.0和7.0系統都只是在5.0系統上進行了小幅度升級而已,並無什麼革命性的變化,我以爲將6.0和7.0系統命名爲5.二、5.3系統也並不爲過,由於以前的2.x、4.x系統也都是這樣命名的。可是小版本號的升級可能不會讓人有那麼大的升級慾望,而Android最讓人頭疼的詬病就是碎片化過於嚴重。所以,我以爲Google使用這種大版本號升級的方式,必定程度上是爲了解決Android碎片化的問題,這樣還在用4.x手機的人就會以爲本身的系統很老了。事實證實,Google的這種策略也確實是有了不錯的成效,目前5.0以上系統的佔有率已經超過了50%,算是在必定程度上緩解了很多碎片化的問題。

固然,以上只是我我的的一些看法,Google使用這種大版本升級的方式可能還有更多更深遠的意義,這我就不得而知了。

Android將來的發展趨勢是什麼?是否會考慮再出第3版?

一切都很差說,由於科技的發展真的是突飛猛進,你永遠都沒法預測明天會出現什麼新的技術。從長遠的角度來看,將來的熱點技術會集中在VR(虛擬現實)和AI(人工智能)上面。Android 7.0系統中已經宣稱加入了VR功能,AI技術則不知會在哪一天引入到Android系統中。可是這些技術都有些過於前沿和早期了,離進入到千家萬戶可能還有很長一段時間。也許當《第2版》中所講的技術已經遠遠落後於當前科技的時候,我會考慮再出第3版吧,但至少目前第2版中的技術仍是很是領先的。

有哪些圖書和學習資源推薦給Android開發者?

其實學習的途徑有不少種,看書只是其中的一種而已。固然,好的圖書能夠幫助學習者少走不少彎路,所以,可以挑到一本好書對於不少人來講也是挺重要的。在Android領域中,除了《第一行代碼》以外,還有像《Android開發藝術探索》《Android羣英傳》《Android 源碼設計模式》等都是很是不錯的,對於已經入門的開發者們,能夠嘗試看看這些書來尋求進一步的技能提高。

除了看書以外,閱讀博客也是一種學習的途徑,不過博客比起書的話,內容就比較雜亂,不多有誰能夠將博客的內容寫得像書同樣有條理,包括我本身。所以,博客更加適合於去學習一些零散的知識點,或者學習一些特定問題的解決方案,而不是很適合進行系統地學習。

如今還流行了一些新興的學習方式,好比說看視頻教程。像極客學院、慕課網、CSDN都有邀請講師錄製了各類各樣的技術類視頻教程,比起書和博客,視頻的方式可能更加直觀。包括我本身以前也錄製過一個系列的視頻教程,叫《見證Android消息推送時刻》,你們感興趣的話能夠本身去搜索一下。

最後我再分享一下我本身平時的學習方式,由於我天天也在不斷學習新的知識。可能我所學的東西涉及的面並不廣,可是通常會盡量研究得深刻一些。一般我都會盡可能去閱讀英文原文資料,包括Android官方文檔、StackOverflow等,這個時候Google就是我最好的幫手。我還會在GitHub上挑一些感興趣的開源項目來進行研究,其實我用過的開源項目真的不多不多,可是一旦開始研究它,就不會僅僅停留在使用的層面上,而是研究源碼,瞭解它具體是如何實現的。其實多看一些開源項目的代碼,對於本身的編程思路以及編程能力都是有挺大提高的,這也是我如今提高本身的一種方式吧。


——更多訪談

更多精彩,加入圖靈訪談微信!

相關文章
相關標籤/搜索