如何阅读源码
文章目录
- 1 问题背景
- 2 如何阅读源码
- 2.1 了解源码的功能
- 2.2 找切入点
- 2.3 抓大放小
- 2.4 多断点debug
- 2.5 画流程图
- 3 阅读源码的作用
1 问题背景
我的导师,项目leader,分享了如何阅读源码。方法大致与我总结下来的大同小异,估计阅读源码的方法都是这样了。
2 如何阅读源码
2.1 了解源码的功能
必须要对待研究的源码的功能有一定的认知以及了解,最好能跑一遍代码或者做一个小demo。仅需了解有什么功能、作用即可。
2.2 找切入点
任何一个开源项目的源码都是很庞大的,研究其源码必须要有切入点。比如nacos源码,nacos可以作为注册中心、配置中心、网关。而注册中心又有服务发现、服务注册、心跳检测、服务下线。因此研究任何源码,都必须有一个切入点,带着疑问带着问题一边思考一边研究。
2.3 抓大放小
阅读的过程中,第一遍切忌纠结于某一处地方,有不懂的先放下,等自己对整个流程都有一个大概的认知,再深入研究某个疑点、难点。遇见常见的见名知意的方法名,可以酌情略过或者深入阅读。比如init()
这些字眼的,虽然见名知意,但是还是比较重要的,springboot启动过程中就有很多init()
方法。比如一些getXXX()
这些目的就是获取一个bean,可以省略不看里面的实现,或者有需要研究如何实现再看。
2.4 多断点debug
出色的源码一般都是非流水线设计非流水线调用的,很多时候只看不debug是无法知道代码运行到哪里,此时可以在多处有可能运行到的地方都打上断点。
2.5 画流程图
每阅读一部分功能代码都可以画出一个图,整个源码看完后,这些图就建立起关系了。以后再重新阅读源码配上自己总结的流程图就事半功倍了。
3 阅读源码的作用
- 为技术选型做准备
- 有助于根据项目情况定制特定功能
- 提高自身技术深度
还没有评论,来说两句吧...