《深入理解Java虚拟机》、《Effective Java》
Android相关的书籍包括《Android权威编程指南》、《Android开发艺术探索》等,《Android源码设计模式解析与实战》等书籍,对阅读源码大有裨益。
当然,要让自己成为高级工程师,不仅仅需要自己具备性能调优的能力,其实学习的内容还有很多。还需要对Java(Kotlin)语言熟练掌握/Android SDK原理源码深入理解/高级UI绘制能力/Android热门技术/C与C++语言能力/NDK开发能力/hybrid开发(Flutter)/小程序编写能力。因为不同行业不同项目需要学习进阶的技能都不一样,要是要在细分领域找准方向!
初级:
比如四大组件如何使用、如何创建Service、如何进行布局、简单的自定义View、动画等常见技术
中级:
- AIDL:熟悉AIDL,理解其工作原理,懂transact和onTransact的区别;
- Binder:从Java层大概理解Binder的工作原理,懂Parcel对象的使用;
- 多进程:熟练掌握多进程的运行机制,懂Messenger、Socket等;
- 事件分发:弹性滑动、滑动冲突等ÿ