- 先fork一个你想学习的项目,在fork的项目下建立一个学习分支
- 了解项目背景,熟悉、理解项目的结构
- 找好切入点(解决bug、与其他系统集成、添加功能等)
- 开始阅读,并在源代码中添加自己的理解或标记
- 优秀的项目基本上都能做到命名准确,所以大部分变量、函数都能很好的理解其意义以及用法
- 一些私有函数、复杂的逻辑可以先跳过,只记住其输入、输出即可,之后可以回过头来细读
- 调试代码,尤其是动态语言,你甚至不知道调用的函数是在哪里声明的
- 你可能还需要一个画图工具,用来绘制流程图、时序图…
- 提交你的记录
最后,我们阅读源码的目的主要是学习别人的设计思想、编码技巧。