您的位置:首页 > 移动开发 > Android开发

android各阶段目标与要求

2016-03-09 10:47 197 查看
初级工程师

技术要求:

基本知识点

比如四大组件如何使用、如何创建Service、如何进行布局、简单的自定义View、动画等常见技术

学习方法:

Android入门的时候,需要有一本入门书,好好学习书中的内容,同时花一年时间把Android**官方文档中的training和guide看一遍,同时通过写博客记笔记**的方式来做总结,建议让自己的每篇博客都有价值些。

中级工程师

需要学习的内容:

- AIDL:熟悉AIDL,理解其工作原理,懂transact和onTransact的区别;

- Binder:从Java层大概理解Binder的工作原理,懂Parcel对象的使用;

- 多进程:熟练掌握多进程的运行机制,懂Messenger、Socket等;

- 事件分发:弹性滑动、滑动冲突等;

- 玩转View:View的绘制原理、各种自定义View;

- 动画系列:熟悉View动画和属性动画的不同点,懂属性动画的工作原理;

- 懂性能优化、熟悉mat等工具

- 懂点常见的设计模式

技术要求:

稍微深入的知识点

AIDL、Messenger、Binder、多进程、动画、滑动冲突、自定义View、消息队列等

学习方法:

阅读进阶书籍,阅读Android源码,阅读官方文档并尝试自己写相关的技术文章,需要有一定技术深度和自我思考。

如何阅读源码呢?这是个头疼的问题,但是源码必须要读。阅读源码的时候不要深入代码细节不可自拔,要关注代码的流程并尽量挖掘出对应用层开发有用的结论。另外仔细阅读源码中对一个类或者方法的注释,在看不懂源码时,源码中的注释可以帮你更好地了解源码中的工作原理,这个过程虽然艰苦,但是别无他法。

进阶书籍:《Android开发艺术探索》、《Android群英传》

高级工程师:

需要学习内容:

继续加深理解”稍微深入的知识点“中所定义的内容

了解系统核心机制:

了解SystemServer的启动过程

了解主线程的消息循环模型

了解AMS和PMS的工作原理

能够回答问题”一个应用存在多少个Window?“

了解四大组件的大概工作流程



基本知识点的细节

Activity的启动模式以及异常情况下不同Activity的表现

Service的onBind和onReBind的关联

onServiceDisconnected(ComponentName className)和binderDied()的区别

AsyncTask在不同版本上的表现细节

线程池的细节和参数配置



熟悉设计模式,有架构意识

技术要求:

- 稍微深入的知识点

- 系统核心机制

- 基本知识点的细节

- 设计模式和架构

学习方法:

这个时候已经没有太具体的学习方法了,无非就是看书看源码做项目,平时多种总结,尽量将知识融会贯通从而形成一种体系化的感觉。同时这个阶段对架构是有一定要求的,架构是抽象的,但是设计模式是具体的,所以一定要加强下设计模式的学习。

推荐书籍:

《Android开发艺术探索》、《Android 源码设计模式解析与实战》、《Android内核剖析》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息