源码阅读

备注: 以下言论非原创,来自各社区,时代久远,已不可考,侵删。

  1. 相信重复的力量
  2. 善用工具,比如vim到我ctags插件,source insight,code understand等。vs,linux下sublimtext,codeblocks
  3. 从.h文件的数据结构开始,脑补,先想再读等。
  4. 联系实践,不是为读而读,带着目的去读。
  5. 写分析文章,教学相长。
  6. 熟悉的项目可从main开始,不熟悉或大型项目从example或client入手。
  7. c代码,关注结构体,一般函数围绕它们处理,java代码关注interface
  8. 边看边做笔记,画uml,流程时序图等,方便回忆,中断后继续。
  9. 收集相关文档资料,知识储备。
  10. 找开始的地方,分层次阅读。
  11. 备份,构造执行环境,编译构建该源码。
  12. 写注解,帮助理解,防止重复阅读。反复阅读。
  13. 修改,执行代码。
  14. 阅读书Code Reading
  15. 运用版本控制系统git查看代码和日志对比,可了解代码演变信息。常用git log,git blame命令。git grep相同使用例子。
  16. gdb step
  17. follow commit历史,看看代码怎么扩展开来的,可以了解框架,作者思路。同15条
  18. 懂得基本的设计模式,框架知识。
  19. 在Linux下用vim+ctags,需要注意下面这些:设置vim为打开文件后默认跳到上次关闭的地方,在/etc/vim/vimrc中可以设置;设置vim,将ctrl+] 默认为命令“:t”即,将全部匹配项显示出来;用好grep命令和find命令即可,查找要查的东西非常好用;grep "the text you want find" * -r是$常用的命令
  20. 帮项目解决issue。可和作者交流,可获得帮助,正反馈,成就感,贡献。
  21. 代码笔记写哪?Plain-text. See https://github.com/middlefeng/LuaVMRead 。之前是直接checkout项目代码,然后在代码旁加注释也是plain text. 问题是sync了新代码之后resolve很麻烦。这办法不错,或者可以在代码文件旁另建文件来加理解。
  22. 边看边骂。斜视

你可能感兴趣的:(源码阅读)