写给现在的自己

  上次申请博客园的时候,发现需要等待,之后搁置了一段时间,今天上来看看,发现审核通过了。这样也算是有自己的个人博客了。

  之前搜一些文档的时候就想到了,每天都是打代码,也仅仅是代码的记录,就算上传github,其实会看的地方也比较少,较少有个人感悟上面的提升。换成博客之后,每日更新的话应该会避免很多类似的问题吧。

  恩,回到题目,写给现在的自己。

  从去年毕业之后,入职了一家做手机的公司,就业至今发现不少问题。

  首先,由于公司安排,我被安排到了做framework框架层下面的SystemUI模块。SystemUI顾名思义,就是系统展现出来的UI,狭义上面来看就是几个小的模块,锁屏、音量、状态栏、下拉栏、还有导航栏等。说实话由于framework的设计框架,systemUI说是一个功能比较多的APP也不为过,但是由于不可抽出来,导致不能如同launcher这样的客制化,因此对framework的依赖程度大的多了。这造成了一个很不好的现象,就是有一些功能的设计是在底层进行实现之后使用aidl进行进程间的通信,传到了上层来,这部分的内容我接触的很不熟悉,对于底层传来的数据不知道是怎么个流程,只知道被动的处理。

  比如说本人主攻的一个模块,叫Notification,当应用使用Notification.build()这个API进行一系列通知的构造之后,通过remoteView进行的打包传送到底层,然后底层通过解封装,解读,然后传送到上层,到我这儿处理的时候,就有一个问题,我并不知道底层从哪个地方传过来的,谷歌的Android框架设计的地方比较精细,光Notification这一块我细数就有十来种模型,且SystemUI几乎针对每个通知都有一些独到的设计(不然也不会分这么多种),因此每次光打Log,进行的这方面的调试之后,太过耗时了,这也是我对于底层的不够了解导致的。然而有什么办法,每天光任务就足够压到每晚加班了,压根没有时间进行底层的学习。

  由于对于底层的了解不够,很多内容陷入了一个死循环,便是处理完便不再深入理解,这是最大的问题,止步不前。

  其次,由于公司属于对于Android框架的更改以进行客制化的策略,实际上自己写的东西很少,都是改Bug,在别人的代码上面删删改改。说实话谷歌框架的确不错,很多地方设计思想都很独到,然而看多了的我产生了一种眼高手低的思想。自己写代码的时间也越来越少了,导致一方面阅读能力提升,一方面书写能力下降。

  现在很恐惧万一公司要求我们转APP,我已经忘掉了当初那种写一个APP折腾来折腾去的感觉,现在写APP基本上写写就删了,实在不能看。哎这是纯粹自己的悲哀。

  由以上两点,现在的自己真的是足够不堪。能力甚至可以说是在退化。

  所以问题出现了就要解决,不然为什么要思考问题。针对目前问题一的问题,需要的是大段时间花在对bug的回顾整理,对流程的分析,听上去容易实际上处理起来并不一定能行,时间是个大问题。针对问题二的问题,需要的是对APP的一些常用框架进行分析,这也是下一步需要进行的一个重要的点。

  万事开头难,希望未来的自己看到现在这篇博文可以笑着说都已经解决了。

  

posted @ 2017-03-05 21:34  Sample1994  阅读(102)  评论(0编辑  收藏  举报