《深刻理解Android 卷III》推薦序

《深刻理解Android 卷III》即將發佈,做者是張大偉。此書填補了深刻理解Android Framework卷中的一個主要空白,即Android Framework中和UI相關的部分。在一個特別講究顏值的時代,本書分析了Android 4.2中WindowManagerService、ViewRoot、Input系統、StatusBar、Wallpaper等重要「顏值繪製/處理」模塊

推薦序

回顧

今天是一個值得高興的日子。歷經兩年多的艱苦奮鬥,張大偉同窗的這本著做,同時也是隸屬「深刻理解Android」系列三卷中的最後一卷終於完成了。從2011年我和華章公司的楊福川編輯一塊兒開創這一迄今爲止國內Android技術書籍市場上惟一一套兼具廣度和深度的「深刻理解Android」系列書籍算起,四個年頭已通過去。在這四年中,本套書籍的做者們和出版社的編輯們共同奮鬥,成果斐然: 瀏覽器

·  2011年9月《深刻理解Android 卷I》發佈。 安全

·  2012年8月《深刻理解Android 卷II》發佈。 多線程

·  2013年1月,本系列的第一本專題卷《深刻理解Android:Telephony原理剖析與最佳實踐》發佈,做者是楊青平。 框架

·  2014年4月,本系列的第二本專題卷《深刻理解Android:Wi-Fi,NFC和GPS卷》發佈。 ide

·  2015年,《深刻理解Android 卷III》發佈,做者便是本書的主人公張大偉。 測試

·  2015年及之後,咱們還要發佈深刻理解Android系列書籍中的WebKit專題卷、自動化測試卷、藍牙專題卷等。 加密

從技術層面來講,本書填補了深刻理解Android Framework卷中的一個主要空白,即Android Framework中和UI相關的部分。在一個特別講究顏值的時代,本書分析了Android 4.2中WindowManagerService、ViewRoot、Input系統、StatusBar、Wallpaper等重要「顏值繪製/處理」模塊。雖然在寫書的兩年中,Android版本已經從4.2進化到M,但「面雖新,神依在」。因此,我能夠很負責任地說,對那些掌握了本書精髓的讀者而言,即便Android將來升級到了X,那也只不過是換了一個馬甲罷了。 spa

展望

我在卷II中曾經詳細闡述過「深刻理解Android」這一系列的路線圖(http://blog.csdn.net/innost/article/details/7648869),這裏在展示一下當時的狀況。 .net

本套叢書大致分爲應用部分、Framework部分、專題部分和內核部分。 線程

1)應用部分。這部分擬以Android源碼中自帶的那些應用程序爲分析目標,充分展現Google在自家SDK平臺上作應用開發的深厚功力。這些應用包括Contacts、Gallery二、Mms、Browser等,它們的分析難度都不可小覷。經過對這些系出名門的應用的分析,咱們但願讀者不只能把握商業級應用程序開發的精髓,而能更精熟地掌握Android應用開發的各類技能。

2)Framework部分。關注Android的框架,包括三本書。

·  卷I:以Native層Framework模塊爲分析對象。知識點包括init、binder、zygote、jni、Message和Handler、audio系統、surface系統、vold、rild和mediascanner。本書已於2011年9月出版,雖然是基於Android 2.2,讀者如若紮實地掌握並理解了其中的內容,那麼之後再研究2.3或4.0版本中對應的模塊,也是垂手可得之事了。

·  卷II和卷III:以Java層Framework模塊爲分析對象。卷II基於4.0.1版,包括UI相關服務和Window系統以外的一些重要服務,如PackageManagerService、ActivityManagerService、PowerManagerService、ContentService、ContentProvider等。而的卷III將以輸入系統、WindowManagerService、UI相關服務爲主要目標。

Framework部分所包括的這3本書的目的是讓讀者對整個Android系統有較大廣度、必定深度的認識,這有益於讀者能構建一個更爲完整的Android系統知識結構。應當指出,這3本書不可能覆蓋Android Framework中的全部知識點。所以,尚需讀者在此基礎上,結合不一樣需求,進行進一步的深刻研究。

3)專題部分。旨在幫助讀者沿着Android平臺中的某一些專業方向,進行深度挖掘,擬規劃以下專題:

·  Telephony專題,涵蓋SystemServer中相關的通訊服務、rild、短信、電話等模塊。

·  多媒體專題,涵蓋MultiMedia相關的模塊,包括Stagefright、OMX等。另外,咱們也打算引入開源世界中最流行的一些編解碼引擎和播放引擎做爲分析對象。

·  瀏覽器和Webkit專題,該專題難度很是大,但其重要性卻不言而喻。

·  Dalvik虛擬機專題,該專題但願對Dalvik進行一番深度研究,涉及麪包括Java虛擬機的實現、Android的一些特殊定製等內容。如今來看,Dalvik已經被ART替換,因此這本書的目標就應該是ART虛擬機專題了。

·  Android系統安全專題,該專題的目標是,分析Android系統上提供的安全方面的控制機制。另外,Linux平臺上的一些經常使用安全機制(例如,文件系統加密等)也是本書所要考慮的。這套安全專題我已經在本身的博客[①]上寫了部份內容,包括Java Security、設備加密等。

·  UI/UE設計以及心理學專題,:該專題但願能提供一些心理學方面的指導以及具體的UI/UE設計方面的指南以幫助開發人員開發出更美、更體貼和更方便的應用。

專題部分隱含着的一個極爲重要的宗旨:即基於Android,而高於Android。換言之,這些書籍雖都以Android爲切入點,但咱們更但願讀者學到的知識、掌握的技術卻不侷限於Android平臺。

4) 內核部分。這部分圖書擬以Linux內核爲主。雖然這方面的經典教材很是多,但要麼是諸如《Linux內核情景分析》之類的鴻篇巨帙,要麼是相似《Linux內核設計與實現》,內容過於簡潔。另外,現有書籍使用的內核源碼都已比較陳舊。爲此,咱們但願能有一本難度適中、知識面較廣、深度適宜的書籍。

今天,正是因爲大偉的努力,咱們的Framework部分得以完美收官。高興的同時,咱們認爲前路依然艱辛。在此,我和福川兄再次誠摯邀請國內外有熱情,願分享、有責任心的兄弟姐妹們來一塊兒繼續發揚光大「深刻理解Android」這一系列書籍。

仍是楊瀾的那句話,「原來我只佩服成功的人,如今我更尊敬那些正在努力的人」。讓咱們一塊兒成爲被尊敬的人吧!

軼事

我和大偉相知相識的過程還很有點意思。

那時咱們都在中科創達工做,有一次,咱們倆要一塊兒重構一個和音頻相關的解碼模塊。當時我噼噼啪啪把幾段和多線程相關的同步代碼塊改寫後,引發了大偉的強烈質疑。在質疑(challenge)和爭論(argue)的過程當中,我發現大偉思路清晰,技術能力較強,是一個不可多得的好苗子,便有意交往。雖然吵得很激烈,不過最終實踐的結果是此次改寫仍是比較成功的,這使得我贏得了大偉的信任。

交手事後,咱們便成了好兄弟。2012年夏天,我和大偉被派遣到上海高通公司OnSite。當時我剛完成了卷II的撰寫,同時也在思考不少讀者提出的一個問題,即何時能詳細分析一下AndroidFramework UI部分。古語云「書如其人」,對於我這樣一個對顏值不是很講究的人來講,寫這本書確定不是最合適的。由於我以爲這邊書的做者須要耐心、細心、同時還須要必定審美觀。在我認識的技術能力較強的兄弟們中,大偉無疑是最適合撰寫本書的人選。

固然,對於一個從未寫過書籍的人而言,寫書這樣的重任最初仍是讓大偉以爲緊張,感受沒有信心。因此,我和大偉一塊兒籤的合同,讓他以爲本身不是孤身做戰。另外,在一些技術難點上,我會編寫一些小例子,讓大偉去完善,並以這些例子爲出發點來分析Framework的實現。最後,大偉憑藉本身的的天分和努力,很快就從一個跟隨者變成了這本書的主導者和惟一做者。

在本書的審稿過程當中,我很欣慰得發現這本書細節深刻、知識全面,是一本誠意之做。在此,我我的很是感謝大偉的努力,這本書了卻了我多年的一樁心願。

我曾經很羨慕那些有戰友之情的士兵們。在和平年代的今天,我以爲我和大偉,福川,楊青平等做者、編輯都曾爲了共同一個目標一塊兒努力過,奮鬥過,咱們之間的感情應該可以媲美戰友之情吧。

                                                          鄧凡平

                                                         2015-7-5

 

 

 



[①] 個人博客地址:blog.csdn.net/innost。

相關文章
相關標籤/搜索