@author ASCE1885的 Github 簡書 微博 CSDN 知乎
本文因爲潛在的商業目的,不開放全文轉載許可,謝謝!html
廣而告之時間:個人新書《Android 高級進階》(https://item.jd.com/108219759... )在京東開始預售了,歡迎訂購!前端
Android 應用開發發展到今天,已經成爲一個很是成熟的技術方向,市面上涌現了大量的關於 Android 開發的圖書,總的來講能夠分爲如下幾類:git
這類圖書應該是市面上佔比最多的,也是初中級開發者比較青睞的一類圖書,基本上介紹的都是 Android 的基礎知識,例如界面開發,數據存儲,網絡通訊,數據庫操做,傳感器使用等等,最後附上一兩個簡單的項目實戰的介紹,這類圖書建議讀者在入門的時候買一本評價還不錯的學習一遍,而後結合實際項目進行知識鞏固便可,以後這類書基本上扮演的是工具書的角色,就是在忘記某個知識點的時候到書中查一查從新溫習一遍。這類圖書建議直接買一本《瘋狂 Android 講義》就夠了。程序員
這類圖書又能夠分爲兩種:Framework 層源碼分析類和 Native 層源碼分析類,這類圖書主要針對從事 Android 系統開發的讀者,固然,從事應用開發的讀者若是對 Android Framework 等底層的實現原理有所瞭解的話那是大有裨益的,並且相對而言也更有優點。這類圖書推薦閱讀《Android 系統源代碼情景分析》和《Android 內核剖析》。github
這類圖書主要介紹的是 Android 平臺的軟件安全,逆向分析以及加解密技術等,涉及的主要是 Android 軟件的靜態分析,動態調試,破解及反破解等技術的探討。這個方向的知識既有 Android 應用開發者所須要的,也有 Android 系統開發者所須要的,市場上也有專門的 Android 系統安全相關的職位,這類圖書首推國內非蟲的《Android 軟件安全與逆向分析》。面試
這類圖書主要介紹的是 Android 內核,移植和驅動開發的整個底層嵌入式開發知識,這一類知識點其實並不能算做是移動端開發,本質上屬於傳統的嵌入式開發領域,畢竟 Android 底層就是一個 Linux 系統。因爲這類書籍我也沒有涉及到,所以也就不做推薦了。數據庫
以上即是目前我所看到的 Android 圖書市場所覆蓋的大部份內容,能夠說是大而全,固然事實上最近還有一類圖書也在不斷的涌現出好的做品,這類圖書體現了一線互聯網公司工程實踐中涉及到的重要知識點和經驗總結,我將之歸類爲第五類:工程實踐類。我的比較推薦的有《Android 開發藝術探索》和 《APP 研發錄》。編程
最近我也寫了一本相似的書籍《Android 高級進階》,本書從結構上分爲八大篇,共 50 個知識點,旨在爲初中級開發者在技術上更上一層樓提供必要的知識儲備,固然,某些知識點若是要講完整,能夠單獨成書,限於篇幅,相似這樣的少許幾個知識點只能點到爲止,但相信讀完此書後,在 Android 研發這條道路上你的視野會更開闊,在技術選型,方案討論中會具有更多的決策能力。本書的主要內容以下:設計模式
這是佔比最大的一個篇章,雖然名爲基礎篇,但你應該理解爲是高級進階裏面的基礎知識,而不是 Android 開發入門的基礎知識。本篇主要包含 Android View,動畫,Support Library,Gradle,NDK,ANR,異步技術,註解,數據序列化和 Hybrid 等知識點。安全
本篇側重介紹架構和項目總體的相關知識,主要包括 UI 架構,事件總線,編碼規範和技術堆棧等知識點。
本篇側重介紹 Android 工程實踐中得出的經驗,主要包括 64K 方法數限制,插件框架,推送原理,APP 瘦身,Crash 統計等知識點。
本篇側重介紹新近出現的技術點,固然可能本書出版時已經沒那麼新了,但並不妨礙其重要性,主要包括函數式編程思想簡介,依賴注入,Kotlin,React Native,在線熱修復,AOP 和 Facebook Buck 等知識點。
本篇側重介紹目前 Android 平臺常見的性能優化相關知識,主要包括代碼優化,圖片優化,電量優化,佈局優化和網絡優化等知識點。
本篇側重介紹不少應用中常常會忽略的安全知識,主要包括混淆,反編譯,密鑰隱藏,加固和如何編寫安全的代碼等知識點。
本篇介紹了 Android 開發中會用到的幾個工具,主要包括 Android Studio, Stetho,LeakCanary 和 Redex 等知識點。
本篇帶來了幾篇測試相關的知識,這是不少開發人員常常容易忽略的,本質上屬於測試領域,但開發人員須要有所瞭解,主要包括 Android 單元測試,UI 自動化測試,靜態代碼分析和自動化構建等工具。
以上,即是我對當前 Android 圖書市場的認識,若是你覺得本文就此完結,那就錯了,事實上,精彩部分纔剛剛開始。做爲一名合格的 Android 開發者,你僅僅閱讀 Android 相關的書籍是不夠的,你可能還須要涉及周邊相關的一些技術,例如 iOS,React Native,Node.js,Javascript,設計模式,系統架構 等等,下面咱們固然不會發散開去介紹這些方向的相關圖書,而是介紹一些代碼以外的優秀圖書。
最近在讀的一本新書,很是不錯,講述的是技術中人的因素,"聚焦於軟件開發人員生活的方方面面,從揭祕面試的流程到精耕細做出一份殺手級簡歷,從建立大受歡迎的博客到打造你,從提升本身工做效率到與如何與「拖延症」作鬥爭,甚至包括如何投資不動產,如何關注本身的健康。"
好久以前讀過的一本書,從書名能夠看出,這是一本講述敏捷開發的圖書,但並非對敏捷開發理論的照搬照抄,而是"闡述了成爲高效的開發人員所需具有的 45 個習慣、思想觀念和方法,涵蓋了軟件開發進程、編程和調試工做、開發者態度、項目和團隊管理以及持續學習等幾方面。"
本書也是多年前看過的,適合普通開發者和項目經理,跟下面的李元芳履職記相似,只不過這個是講從技術走向項目經理的。"做者結合自身的豐富成長曆程,通俗易懂地講述了一名程序員如何才能成爲一名優秀的項目經理。內容涉及職業規劃、學習方法、自我修煉、團隊建設、項目管理等,書中理清了項目管理領域中典型的誤區及具備迷惑性的觀點,並對項目中的難點問題提出了針對性的解決方法。"
本書是《代碼整潔之道》的姐妹篇,是做者 "Bob 大叔 40 餘年編程生涯的心得體會的總結,講解要成爲真正專業的程序員須要具有什麼樣的態度,須要遵循什麼樣的原則,須要採起什麼樣的行動。做者以本身以及身邊的同事走過的彎路、犯過的錯誤爲例,意在爲後來者引路,助其職業生涯邁上更高臺階。"
在軟件開發領域很是著名的一本書,相信不少人都已經或多或少的看過。"由一系列獨立的部分組成,涵蓋的主題從我的責任、職業發展,直到用於使代碼保持靈活、而且易於改編和複用的各類架構技術,利用許多富有娛樂性的奇聞軼事、有思想性的例子及有趣的類比,全面闡釋了軟件開發的許多不一樣方面的較佳實踐和重大陷阱。"
做者以小說的形式講述了主人公李元芳從技術骨幹成功轉型爲優秀管理者的成長過程,"介紹了李元芳五年半的一線技術工做及技術從業背景,從管理「菜鳥」蛻變爲合格管理者的成長曆程,從合格管理者蛻變爲優秀管理者的成長曆程,以及職業成長夢想"。雖然是一本管理相關的圖書,但裏面的道理對於普通開發者來講大部分也是適用的,若是你想成爲更優秀的本身的話,本書絕對會讓你愛不釋手的。
番茄工做法是很是流行的高效時間管理工具,在軟技能一書中也作了介紹,"做者根據親身運用番茄工做法的經歷,以生動的語言,傳神的圖畫,將番茄工做法的具體理論和實踐呈如今讀者面前。番茄工做法簡約而不簡單,本書亦然。在番茄工做法一個個短短的25分鐘內,你收穫的不只僅是效率,還會有意想不到的成就感。"
若是有哪本書對你的成長起到了很大做用的話,歡迎留言討論交流。
歡迎關注個人微信公衆號 ASCE1885,專一與原創或者分享 Android,iOS,ReactNative,Web 前端移動開發領域高質量文章,主要包括業界最新動態,前沿技術趨勢,開源函數庫與工具等。