Android深入學習需要看一些jvm書籍或者資料呢?
01-11
在幾個月之前也思考過這個問題,可惜我對VM了解的非常少,因此特意向 @RednaxelaFX 請教過,這是R神當時的回答:
我覺得?我覺得有興趣的話可以讀,只是做應用開發的話讀不讀多半影響不大,而且要讀也得讀針對Android的。市面上講JVM的書很大都是以Sun的JVM為默認大背景講的,有些東西Android不適用。
後來又跟R神聊了會,他表示沒有發現什麼比較好的介紹Android VM的書,只看過一本日語的相關書籍,後來我也在網上搜了一下,發現有幾本國內作者出的書,但國內的技術類書籍質量高的確實少,對這幾本書的興趣不大。資料方面也沒有發現非常好的,如果有朋友有相關的資料推薦,煩請一併告知。
如果是想深入學習Android,並不局限在VM方面,最近在知乎上也看到了幾個Android方面比較深入的回答,可供大家參考:Android 中 知乎日報和知乎設置夜間模式是怎麼樣做到不重啟Activity的? - Gracker 的回答android系統不釋放內存嗎? - Gracker 的回答Android M 的 Doze 模式下第三方推送服務還能用嗎? - Oasis Feng 的回答
Android中的Thread與AsyncTask的區別? - 知乎用戶的回答學無止境,與君共勉。Android Open Source Project(The Fucking Source Code !!!)老羅的Android之旅 羅昇陽老師的博客,看他的博客感覺自己就是個渣,他的書籍《Android系統源代碼情景分析》。
Android底層vm只是一小部分了,Java層的Framework:AMS,Wms,Pkms,Pms,SystemServer,Zygote等,Android中自己實現的一些技術,比如用於非同步調用的Handle,跨進程通信Binder等~~~Native層主要是Android系統用於Java App層與Linux Kernel層交互,當然也有其他的,比如Input,graphic,mediaServer,camera,zygote等等~~~再就是Linux kernel了,跟一般的Linux差別不大,vm自從5.0就默認Art了(4.4就已經有了,但當時不穩定,不是默認的),說真的,vm只是Android底層的一點~~~~~~手機碼字,好累~~~~
以前遇到大神,我說,你現在搞手游,你覺得ASM又有么?他說,為什麼沒用?得到的答案就是,為什麼要給自己找借口。。但是呢,不得不說,安卓虛擬機的書,確實太少了。看jvm,有點不對口。。
C,java,編譯及Linux kernel。
java核心思想,深入理解java虛擬機,java虛擬機規範,代碼整潔之道,演算法導論,編譯原理。
推薦閱讀:
※未來還能買到4.7寸以下配置中上的智能手機嗎?
※暑期換機,在HTC U11和索尼Xperia XZ Premium之間如何選擇?
※怎麼看待谷歌收購摩托羅拉移動?
※Android 上最好的 Mobi 閱讀器是什麼?
※iPhone7,moto z,note7,選哪個?
TAG:Android開發 | Java虛擬機JVM | Android |