以前阅读代码总是很慢,自己理解能力也不是很好,很难直接在脑中运算出每一步结果,主要原因有两点:
- 对api不熟悉,框架太多,函数太多.->多熟悉自己常用的框架
- 源码框架层数一般较深,多次返回就会记不住原来的内容.
这次也是从网上阅读了一些博主的帖子,希望改进自己的源码阅读能力,提高工作效率.
如何高效阅读源码
- 带着问题去阅读,这次为什么看代码?希望理解和解决什么问题?
- 先让项目可以跑起来
- 多熟悉框架的功能点的使用,不会用就谈不上读
- 多debug,打断点来分析运行的情况.
- 重点地方写注释
- 形成文档,记录自己的阅读成果.人的记忆能力是有限的,回顾自己的笔记会加速理解.[类图,序列图]
- 抓主干,框架和流程.自顶向下,把握整体设计框架.
- 学习设计模式
- 画类图和序列图,活动图,状态图
- 思考对象,接口和方法的名字的含义,有助于理解类的作用
- 以纸代笔,专注思考
- 看一下这个源码的 commit 记录,尤其是 fix 和优化的 commit,这样可以更好地理解作者代码这么写背后的抉择,更容易从作者的角度理解代码。
- 技巧一:代码一定跳着看,带着问题看
- 技巧二:超难算法放最后,可以做好注释标记,先行跳过.