Android高级开发进阶之路
前言
Android基础知识已经掌握的差不多了,该往高级开发进阶了。高级其实也是个概念,没有特定的划分区别。按照就我理解的Android高级开发我把它分成3个部分。
- 理解并熟悉Android框架。你不仅要熟悉并掌握Android上的一些常用机制比如View的绘制,触摸事件的传递等,还要深入理解Android 的FrameWork框架。
- 有着扎实的基础知识,像java,网络,数据库和数据结构等知识是必不可少的。能够快速阅读第三方代码且能理解其设计思路,一些常用的第三方库要能很好的了解其原理。
- 代码框架设计能力和项目的把控能力,前者要求能够实现符合项目的可用框架并能够随着需求迭代扩展,后者则表示要能够作为一个项目的负责人把控项目进度,风险等。
计划
基于上方三个部分,我罗列了一下准备要输出的文章列表,以便梳理一下自身的知识体系。
第一部分:开源框架
- Restful风格的Retrofit2网络请求器
- OkHttp3的网络编程
- 强大的Glide图片处理框架
- 基于观察者模式的RxJava2响应式编程
- 小巧简便的ORM持久库Room
- Dump分析利器LeakCanary
- 应用模块连接器Router
- 热更新框架原理及选择
- Dragger2注解框架
第二部分:基础知识
- 计算机操作系统
- Linux操作系统
- 数据结构与图论
- 数据库的高级进阶
- Java虚拟机特性
- kotlin的使用
- 算法导论
- 设计模式
第三部分:Android进阶
- View的绘制流程
- 事件分发
- 动画框架
- Handler框架
- Binder机制
- 性能优化
- Android架构概述
- Android Architecture Components 组件
第四部分:Android FrameWork
- Android FrameWork层概述
- Activity 的启动流程
- Activity Manager
- Window Manager
- Content Provider
- View System
- Notification Manager
- Package Manager
- Telephony Manager
- Resource Manager
- Location Manager
- XMPP Service
第五部分:个人擅长领域
这个部分暂时还没有计划要写的内容,不过一般都是对某一个技术领域的专研和心得之类的。
结束语
貌似有点多啊,上面的列表仿佛RPG游戏的任务清单一样,不过只有这样才有动力去肝啊~