概述
1. 初级Android工程师(1年)
官方文档 : traning,guide 阅读一遍
做笔记
动手抄几个例子(看API Demos)
四大组件
如何创建Service
如何进行布局
简单的自定义View
动画
2. 中级Android工程师(1-2年)
AIDL :熟悉AIDL 理解原理 懂transact和onTransact的区别
Binder:从Java层大概理解Binder的工作原理,懂Parcel对象的使用。
多线程:熟练掌握多进程的运行机制,懂Messenger、Socket等;
事件分发:弹性滑动、滑动冲突等;
玩转View:View的绘制原理、各种自定义View;
动画系列:熟悉View动画和属性动画的不同点,懂属性动画的工作原理;
懂性能优化、熟悉mat等工具
懂点常见的设计模式
自定义View :我的建议是不要通过学习自定义view而学习自定义view。为什么这么说呢?因为自定义view的种类太 多了,各式各样的绚丽的自定义效果,如何学的玩呢!我们要透过现象看本质,更多地去关注自定义view所需的知 识点,这里做如下总结:
搞懂view的滑动原理
搞懂如何实现弹性滑动
搞懂view的滑动冲突
搞懂view的measure、layout和draw
我个人认为通过《Android开发艺术探索》和《Android群英传》可以缩短这个过程为0.5-1年。
技术要求:
稍微深入的知识点:
AIDL、Messenger、Binder、多进程、动画、滑动冲突、自定义View、消息队列等
3. 高级Android工程师(3-5年)
继续加深理解”稍微深入的知识点“中所定义的内容
AIDL、Messenger、Binder、多进程、动画、滑动冲突、自定义View、消息队列等
了解系统核心机制:
1. 了解SystemServer的启动过程
2.
了解主线程的消息循环模型
3.
了解AMS和PMS的工作原理
4.
能够回答问题”一个应用存在多少个Window?“
5.
了解四大组件的大概工作流程
6. ... ...
基本知识点的细节
1. Activity的启动模式以及异常情况下不同Activity的表现
2. Service的onBind和onReBind的关联
3. onServiceDisconnected(ComponentName className)和binderDied()的区别
4. AsyncTask在不同版本上的表现细节
5. 线程池的细节和参数配置
6. …
熟悉设计模式,有架构意识
学习方法:
这个时候已经没有太具体的学习方法了,无非就是看书、看源码和做项目,平时多种总结,尽量将知识融会贯通从而形成一种体系化的感觉。同时这个阶段对架构是有一定要求的,架构是抽象的,但是设计模式是具体的,所以一定要加强下设计模式的学习。关于设计模式的学习,最近一本新书推荐给大家《Android 源码设计模式解析与实战》,既可以学习设计模式,又可能体会到Android源码中的设计思想,我最近也在阅读此书。
高级Android工程师技术要求:
- 稍微深入的知识点
- 系统核心机制
- 基本知识点的细节
- 设计模式和架构
书籍推荐
《Android开发艺术探索》、《Android 源码设计模式解析与实战》、《Android内核剖析》
最后
以上就是殷勤果汁为你收集整理的成为Android工程师的基本要求的全部内容,希望文章能够帮你解决成为Android工程师的基本要求所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复