接下在的更新下载模块
的接入讨论又让我明白许多,谁依赖谁,谁要调用谁,又怎么去调用,这些东西都需要明白,既然要把模块分开就不能像以前把所有东西写在一个模块中的方法,刚开始我确实不知道怎么设计,最后我突然明白,那就是调用模块的接口,返回需要的值
,每个模块肯定要有自己暴露的接口
,这些接口
就是模块与模块之间合作的桥梁。每次和晟哥讨论,他从来不给我说最终答案,每次都说你要这样,你该怎么做,为什么要这样做
,我刚开始很难回答,最终经过引导和讨论还是找到了答案,这个过程确实能让你明白很多,为什么要这么做!
下载模块
确定好的方案接下来就开始写更新下载模块,写这个模块就是在晟哥写的资源管理SDK上加上一个patch的更新下载解压模块,既然要在原有的库中添加模块,那么就要看懂这个资源管理SDK做了什么,结构又是怎么样,看懂了库才能知道怎样往里面添加自己的东西。看了一天多,晟哥也介绍了一遍,感觉差不多了,就着手写。写的过程就是仿着写,经过两三天写的差不多,测试数据不行,然后就跑过去问晟哥,发现是我自己代码写的问题,人家解析的是数组,我返回的是字典,能解析才怪。后来我改成字典也不行,我就一层一层深入代码找解析代码,真心是一层一层又一层,终于找到了解析代码,才知道自己返回的数据没有加返回的状态码等其他数据,这一点其实在公司规定的接口文档中有说明。
写的过程中我对这个资源管理SDK理解越来越深,添加一些自己需要的功能也越来越顺手, 果然看三天不如写一天啊,期间我也问了一些白痴的问题,都是因为没有好好看懂代码,晟哥跟我说:"以后问问题,自己先把代码研究透了,哪里出的错,为什么出错,解决不了再去问他,不要有个问题就去问,浪费我们两个的工作时间"。所以现在我遇到了问题,再不轻易问别人,其实大部分都可以自己解决的,只是自己没有去研究,没有用心去找这个错。
模块整合
终于在努力下写好了patch部分的功能,中间有些问题跟晟哥讨论,发现我想到的办法都不是太好,可能还是经验少吧,敲的代码还不够。最终终于把使用模块和更新下载模块结合起来了,经过不断的调试,代码也在一步一步完善。
项目写的差不多,我把整个资源管理SDK分析了一下,画了一个类图,搞明白每一个类负责不同的功能,父类与子类的层级关系等,感觉这样也会对我将来代码的设计有一定的帮助。
Read full article from 你不得不看的我的实习总结 | 田腾飞的博客,为梦想而奋斗
No comments:
Post a Comment