Android原始碼分析要看這18本書
關於看書的一些建議:
1. 書不是要用的時候才去看的,要養成經常看書、終身學習的習慣。
2. 不要只看與目前自己工作相關的書,IT技術日新月異,三五年河東,三五年河西。
3. 書看得多了,就會越看越快,學習新的東西時也越容易進入狀態。
對於Android應用開發,力推官方文件:
http://developer.android.com/training/index.html
http://developer.android.com/guide/components/index.html
http://developer.android.com/tools/index.html
要看的書:
語言:
《深度探索C++物件模型》,對應的英文版是《Inside C+++ Object Model》
程式編譯、連結、載入:
《連結器和載入器》,對應的英文版是《Linker and Loader》
作業系統:
《Linux核心設計與實現》,對應的英文版是《Linux Kernel Development》
《深入理解Linux核心》,對應的英文版是《Understanding the Linux Kernel》
網路:
《Linux網路體系結構:Linux核心中網路協議的設計與實現》,對應的英文版是《The Linux Networking Architecture: Design and Implementation of Network Protocols in the Linux Kernel》
《深入理解LINUX網路技術內幕》,對應的英文版是《 Understanding Linux Network Internals》
裝置驅動:
《Linux裝置驅動程式》,對應的英文版是《Linux Device Drivers》
《精通Linux裝置驅動程式開發》,對應的英文版是《Essential Linux Device Drivers》
虛擬機器:
《深入Java虛擬機器》,對應的英文版是《Inside the Java Virtual Machine》
《Oracle JRockit: The Definitive Guide》
嵌入式:
《嵌入式Linux開發》,對應的英文版是《Embedded Linux Primer》
《構建嵌入式Linux系統》,對應的英文版是《Building Embedded Linux Systems》
ARM體系架構:
《ARM嵌入式系統開發:軟體設計與優化》,對應的英文版是《ARM System Developer's Guide: Designing and Optimizing System Software》
綜合:
《深入理解計算機系統》,對應的英文版是《Computer Systems: A Programmer's Perspective》
上面介紹的這些書,都是屬於進階級別的,所以要求要有一定的語言基礎以及作業系統基礎。