不少時候咱們都會不斷收到新手的提問「Android開發的經典入門教材和學習路線?」、「Android 開發入門教程有哪些推薦?」等相似的問題,咱們不斷重複回答這些問題,這讓咱們萌生了作《 Android開發書籍推薦:從入門到精通系列學習路線書籍介紹》的想法,整理收集開發大牛的學習經驗,以便讓咱們少走彎路,更快速成長。但願這個系列能夠成爲你們手頭應對新手的好答案。java
JAVA入門書籍:android
《 Introduction to java programming 》程序員
《 Core java 》中文譯名《Java核心技術》氛圍基礎知識和高級特性編程
《Java核心技術(卷1):基礎知識(原書第9版) [Core Java Volume I—Fundamentals (Ninth Edition)]》設計模式
《Java核心技術(卷2):高級特性(原書第9版) [Core Java, Volume II--Advanced Features]》網絡
JAVA進階書籍:架構
《Thinking in java》app
《Effective Java》框架
湯濤推薦理由:第二本要反覆多看幾遍,另外Java學習還有個技巧,把各類代碼檢查工具報告的警告都正確處理掉,一個不漏,保證你成長飛快。ide
stormzhang推薦理由:公認的Java進階必備,《Effective Java》是一本實用至上的書,78條建議,滿滿的乾貨。
袁輝輝推薦理由:《Thinking in java》:很是經典的Java書籍,有些人以爲這個書不適合初學者,可就是我看的第一個本Java書,或許是當初自學Java沒有高人指點,便挑選了經典書來入手。看一本經典書,第一遍能理解個大概,能對總體有一個概念,這就能夠了,反覆多讀幾遍,細細咀嚼,每一遍都會有不一樣的領悟。
1、Android入門:
Android Training
Android API Guides
胡凱推薦理由:入門使用官方的這兩份文檔是最好不過的了,沒有比這個更權威,更準確的Android學習資料了。中文書能夠隨便買兩本入門,配合一塊兒看看就行了。在實踐的過程當中多參考官方的Sample Code,多按照官方的推薦進行代碼實踐!
湯濤推薦理由:官方文檔,權威專業,入門不二之選,正確的入門姿式,對後續的成長幫助很是之大。
《第一行代碼》
《瘋狂Android講義》
《Android4高級編程》
《Android編程權威指南》
徐宜生推薦理由:全面、基礎,內容豐富!基礎類型的書只要看一本就夠了,用來全面瞭解知識體系和結構,不用所有精讀,只須要有概念便可。
CJJ推薦理由:《第一行代碼》做者郭霖,看了郭霖不少博客文章,每一篇都寫的很詳細,也很用心。這本書大概瀏覽了一遍,內容淺顯易懂,很是適合初學者!
任玉剛推薦理由:《第一行代碼》做者郭霖,手把手教你入門,清晰易懂。
袁輝輝推薦理由:《瘋狂Android講義》正是這樣一本書,也是我看過的第一本Android書籍,書中並無深奧的理論,有大量的實例,邊看的過程當中,邊在電腦面前跟着敲了一遍實例代碼,最好能作到理解性地敲,而非看一個單詞再電腦面前敲一個。我大概花了一週時間把這本書看完並把大部分的實例代碼都親手敲了一遍。《第一行代碼》做者郭霖,網上有很多人都推薦這本書做爲Android入門書,我大概掃了一遍,知識點較基礎,做者文筆不錯,書中還穿插了很多打怪漲經驗升級的片斷,比較風趣。
2、Android進階
《App研發錄》
《Android羣英傳》
《深刻理解Android》
《Android開發藝術探索》
《Android系統源代碼情景分析》
袁輝輝推薦理由:《深刻理解Android》鄧凡平,做者功力深厚,以情景爲分支,從framework源代碼層面來,深刻分析Android系統,很是適合高級應用開發工程師和系統工程師閱讀。《Android系統源代碼情景分析 》羅昇陽,對Android系統的理解很是深,老羅知識體系很全,文章從app/framework/native/kernel等全方面剖析,這是Android界的盡人皆知的大牛,「老羅栽樹,你們乘涼」,很是值得一看,前提要是有紮實基礎。
stormzhang推薦理由:《Android開發藝術探索》這是一本Android進階類書籍,採用理論、源碼和實踐相結合的方式來闡述高水準的Android應用開發要點,Android開發進階值得擁有!
任玉剛推薦理由:《Android開發藝術探索》,做者任玉剛。分析android核心知識點,直指高級工程師進階要點!(做爲藝術探索一書的讀者,我也是激勵推薦的!!很是讚的一本書!)
《Clean Code》
《Clean Coder》
湯濤推薦理由:進階是個大話題,只看一兩本是不夠的,甚至只看書也是不夠的,能進階到什麼程度只能靠本身積極主動的積累。 硬要推薦的話,就不說 Android 的書了,市面上幾本熱門書均可以看看。這裏推薦的兩本,同一人所寫,都有中文譯本。教你代碼怎麼寫得更好,以及怎麼作一個更職業的程序員。
《HeadFirst設計模式》
《重構:改善既有代碼的設計》
胡凱推薦理由:在大量實踐Android程序以後,咱們須要會分辨哪一種寫法是更優秀的,經過重構來改善既有的代碼,經過設計模式的不斷理解實踐對既有的框架進行優化,追求更加設計良好的程序。
3、Android底層
《深刻理解Android ***》系列書籍,鄧凡平老師寫的系列。
《Android源碼設計模式》,結合設計模式分析源碼
《Android框架揭祕》,底層架構的一本好書
徐宜生推薦理由:底層書籍對於應用開發者來講,不用過於深刻,主要用於學習設計思路和了解底層設計機制
《Linux內核設計與實現》
《深刻理解Linux內核》
袁輝輝推薦理由:Android底層是基於Linux Kernel,因此想成爲Android全棧工程師,瞭解Linux Kernel是很是有必要的。這方面書籍較多,我就列舉兩本《Linux內核設計與實現》,《深刻理解Linux內核》。第一階段只需加深對Android系統總體性的理解,沒必要拘泥於每一個細節都理解,看完能大抵理解kernel進程的管理和調度機制,內存管理和內存尋址,I/O驅動設備(字符設備、塊設備、網絡設備)和調度機制等有所瞭解就夠了;若是都理解了也就夠了,若是想再深刻,能夠結合Kernel代碼多看兩遍。
小結
無論看多少書,更重要的是本身思考,動手重複的實踐!也許這個過程很耗時間,可是,這個不斷以代碼去驗證本身的某些猜測的過程,即是技術成長的歷程!