谈谈自己关于阅读源码的一点鄙见

      起因是这样的,最近一个工作两年同事,用其他同事写好的一些控件,网络库的时候,总是问别人怎么调用,有几种调用方法,不只是一次两次是每次都这样,一个简单封装Dialog的调用都要问别人怎么用传什么参数,什么类型的,我就跟他说自己点进去那个类看看不就清楚了吗?这个同事还比我高一届,我就有点奇怪了难到两年都是这么过来的,算了不多说了,可能这是他一直的习惯吧,不好评论什么,还是简单讲一下自己平时的做法吧,帮助一些刚进IT坑的新手们,不,应该是刚进IT门的新手们,大神请忽略以下的一万字。。。

      其实我也是个菜鸟,之前是做了差不多一年的手游客户端开发,后面转的安卓,安卓经验两年不到吧,只不过是对看源码这事有一点自己的看法,跟大家分享一下。

       先说一些历史背景吧,从大学玩ACM的时候开始说起吧,那时候因为是写的算法代码都是C和C++混用,经常用到STL,有时候一些题目就是STL函数的一些变形按照题目给的规则截取字符串什么的,用多了也会好奇,想去看看别人STL里面的实现,就会掉进去源码看,第一次看还是比较懵逼的后面的话一些封装好的函数能看个大概吧,后面实习做的手游开发用的Cocos2d-X,上层用的lua开发,Lua层封装好了很多东西,基本上就是纯写界面+调函数+处理返回数据 去完成功能,写多了感觉有点枯燥,有时候好奇也会去看Cocos2d的源码,因为对C++还算熟悉看起来也不怎么费劲,看了Cocos2d里面的游戏mainLoop循环,内存管理部分,动画的实现等等,动画这里印象比较深刻因为里面像平移这些都是用的插值计算来处理中间变化位置的,又找到一处跟数学扯上关系的地方,谁说数学没用的,只是你还没有到使用数学去解决问题的境界而已,毕业后转了安卓,安卓这块看一些开源组件的代码比较多,SDK里UI的类看得比较多,像上一篇写观察者的时候就会去看看BaseAdatper的源码,反正感兴趣就会点进去看源码,看得越多越有感觉。

       个人觉得看源码最主要还是抓住一条线去看,比如ctrl点进去看一个方法的实现就看当前的那部分上下相关的东西,还有相关注释,对这个类不太了解的话,可以拖上最顶看看类的注释,一般源码都会写好几行注释来描述的,这时候又用到英语能力了,谁又说英语没用的,有个四级水平基本都能看懂个大概,源码里的注释很重要,方法,参数,返回值都基本会有注释的,还有看源码千万别看书一样,从上外下看这样看会哭的,你只需要关注你当前要关注的,其他无关的可以先别管,源码里太多细节了,看的时候尽量忽略掉,初学者只需要看个大概,日后成为大牛进来源码就是为找bug来的,那就随你喜欢了,一般点进去一个方法都不是最终的,都会继续可以往下一层进去,还是一样的思路,关注你当前要关注的东西,看相关的注释。

       按照这种思想来看的源码,感觉还行,如果大家有更好的方法欢迎指教一下。微笑

阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页