学习计划
2015-09-05 09:55
288 查看
最近换了新工作,去了一家创业公司,压力有点大,一个是因为周围的人背景都很资深,都很牛逼,二个是因为创业公司风险太大,再加上现在it的冬天快来了,随时都要做好换工作的准备。
工作三年,虽然能解决问题,但是感觉只是没有形成体系,希望用一年时间,通过写blog的形式,能将知识串起来,形成自己体系。
android framework太过浩瀚,漫无目的的看代码,收效甚微。我认为,学习android源代码,应该是由线到面的过程,比如学习AMS,应该分解为几条线:broadcast如何发送,activity如何启动,ams如何与WMS交互,事件如何传递给activity。理解的线多了,就能形成面,形成的面多了,自然而然能形成自己的知识体系了。
我将基于android M研究,下面是我的学习计划。
一、.android基础
1、 强化java,C++;
2、binder机制的实现原理,java层,C++层;
3、四大组件的实现原理;
4、资源的加载过程,layout的解析过程;
5、HAL层相关知识;
二、Android UI显示
1、窗口是如何显示出来的;
2、输入事件是如何传递到窗口的;
3、控件系统在WMS中是如何起作用的;
4、窗口动画是如何实现的;
5、multi window的实现;
6、surfaceflinger是怎么画的;
7、android壁纸与屏保。
三、PackageManagerService
1、第一次开机与平常开机时,PMS是如何扫描apk的;
2、AdroidManifest是如何解析的;
3、权限管理是如何实现的;
4、apk的安装与卸载过程;
5、odex的优化过程;
四、ActivityMangerService
1、activity如何启动;
2、AMS与WMS的交互;
3、activity的事件传递;
4、Activity中对broadcast的处理;
五、PowerManagerService
六、学习apk
工作三年,虽然能解决问题,但是感觉只是没有形成体系,希望用一年时间,通过写blog的形式,能将知识串起来,形成自己体系。
android framework太过浩瀚,漫无目的的看代码,收效甚微。我认为,学习android源代码,应该是由线到面的过程,比如学习AMS,应该分解为几条线:broadcast如何发送,activity如何启动,ams如何与WMS交互,事件如何传递给activity。理解的线多了,就能形成面,形成的面多了,自然而然能形成自己的知识体系了。
我将基于android M研究,下面是我的学习计划。
一、.android基础
1、 强化java,C++;
2、binder机制的实现原理,java层,C++层;
3、四大组件的实现原理;
4、资源的加载过程,layout的解析过程;
5、HAL层相关知识;
二、Android UI显示
1、窗口是如何显示出来的;
2、输入事件是如何传递到窗口的;
3、控件系统在WMS中是如何起作用的;
4、窗口动画是如何实现的;
5、multi window的实现;
6、surfaceflinger是怎么画的;
7、android壁纸与屏保。
三、PackageManagerService
1、第一次开机与平常开机时,PMS是如何扫描apk的;
2、AdroidManifest是如何解析的;
3、权限管理是如何实现的;
4、apk的安装与卸载过程;
5、odex的优化过程;
四、ActivityMangerService
1、activity如何启动;
2、AMS与WMS的交互;
3、activity的事件传递;
4、Activity中对broadcast的处理;
五、PowerManagerService
六、学习apk
相关文章推荐
- 万象数据库表详解
- [Operate System & Algorithm] 页面置换算法
- 牛客网改错java20150905
- JAVA的StringBuffer类
- swift2.0 AVAudioRecorder的使用
- CentOS6.5上简易搭建Postfix、Dovecot、Sasl、OPenwebmail局域网邮件服务器以及DNS服务器
- 二分图匹配的扩展问题
- 自动和强制类型转换
- C++——friend
- 解决kali linux中metasploit无法升级的问题
- java 操作mongodb
- ThinkPHP源码学习之I方法
- 选择有时比努力更重要
- 日经春秋 20150905
- 分栏/自定义分栏的隐藏
- 匈牙利算法 && EK(邻接表)
- 前端路上的各种问题-javascript—7
- bzoj3990[SDOI2015]排序
- WHERE CAN I BUY DAKELE BIG COLA 3 ?
- Windows内存管理