阅读源码流程
来源:互联网 发布:淘宝店买什么好 编辑:程序博客网 时间:2024/06/06 10:37
来自知乎某用户。
如果时间允许并且有兴趣,可以尝试阅读源码:
(1)阅读源码之前,查看该项目是否提供架构和设计文档,阅读这些文档可以了解该项目的大体设计和结构,读源码的时候不会无从下手。
(2)阅读源码之前,一定要能构建并运行该项目,有个直观感受。
(3)阅读源码的第一步是抓主干,尝试理清一次正常运行的代码调用路径,这可以通过debug来观察运行时的变量和行为。修改源码加入日志和打印可以帮助你更好的理解源码。
(4)适当画图来帮助你理解源码,在理清主干后,可以将整个流程画成一张流程图或者标准的UML图,帮助记忆和下一步的阅读。
(5)挑选感兴趣的“枝干”代码来阅读,比如你对网络通讯感兴趣,就阅读网络层的代码,深入到实现细节,如它用了什么库,采用了什么设计模式,为什么这样做等。如果可以,debug细节代码。
(6)阅读源码的时候,重视单元测试,尝试去运行单元测试,基本上一个好的单元测试会将该代码的功能和边界描述清楚。
(7)在熟悉源码后,发现有可以改进的地方,有精力、有意愿可以向该项目的开发者提出改进的意见或者issue,甚至帮他修复和实现,参与该项目的发展。
阅读全文
0 0
- 阅读源码流程
- Struts2源码阅读--请求流程
- Struts2源码阅读--请求流程
- Cocos2dx源码阅读 启动流程
- Gaea源码阅读(二):客户端流程
- flask源码阅读 应用启动流程
- Nginx 源码阅读笔记4 启动流程
- (源码阅读)Resources资源加载流程
- 源码阅读---AMS与Activity启动流程
- skynet底层源码阅读(8)-启动流程
- Struts2源码阅读(一)_Struts2框架流程概述
- Struts2源码阅读(一)_Struts2框架流程概述
- Struts2源码阅读(一)_Struts2框架流程概述
- [Chrome源码阅读]Chrome启动代码流程1
- [Chrome源码阅读]Chrome启动代码流程2
- [Chrome源码阅读]Chrome启动代码流程3
- Struts2源码阅读之Action和Interceptor的执行流程
- Struts2源码阅读(1)_整体流程分析
- 前端面试之---javascript作用域和闭包
- 五子棋学习(1)
- Leap Motion C++开发笔记(一)下载安装及环境配置
- 【九度OJ】1187:最小年龄的3个职工
- 【DP】51Nod 1052 最大M子段和
- 阅读源码流程
- 工厂模式
- PHP的最大递归层数
- codeforces 849A A.Odds and Ends
- 我的自我评价·担忧·困惑·反思(不断更新)
- Android 性能优化学习笔记.
- 17.9.1日报
- 利用CoreAnimation实现一个时间的进度条
- srs-bench 针对特定业务性能测试并发推流 解决方案