学着分析android framework telephony

最近闲来无事, 之前一直做android的telephony和framework,一直也是半吊子,终于闲下来了.现在花了点时间,画了个流程图,终于可以一窥android源码的博大精深.

虽然只是管中窥豹,但是至少我们掌握了如何分析问题. 感谢我用的工具diagram designer.因为这个android的framework逻辑太复杂了,如果在脑海中记住顺序, 很容易就忘记了他们的实现,继承,等等关系.所以一边分析一边画图.

我不得不感叹下,现在的android平台开发工作太过于短,平,快, 导致了没有好好学习到位啊...


    画这个图的初衷是:

     1. 我想了解下RegistrantList的用法;以及我之前心中一直疑惑的, 自定义的handler交给framework, 然后它怎么告诉我的;其实这个RegistrantList有一些类似观察者模式;

     2. 了解下这种框架的interface, abstract class, class的关系;

     3. 感觉到了android源码中使用的设计模式一书中提到的,多态与封装(表现在CallManager不需要知道phone是哪种phone);

     4. 多用组合,少用继承.图中的"有一个xx对象",其实就是组合,对象是通过构造或者setXX()传入给class持有的.

     5. java有一个很牛的话,叫做针对接口编程而不是针对实现编程.从中领悟了一些模模糊糊的东西,但是还是不够清晰.再积累吧.

     


  

  

猜你喜欢

转载自blog.csdn.net/jzlhll123/article/details/49589447