本文转载自知乎 IT小透明,已获得转载授权。
几次想阅读源码,但是每回都坚持不下去,毕竟读源码真的是一件很难得事情。随便一份源码,动辄几百个类,每个类几百行,没点毅力真的坚持不下来。当然,也有阅读方法的缘故。
直到我看到了一本书《通用源码阅读指导书》,感觉才找到了源码阅读的方法,也正是在这本书的指导下,我读完了第一份开源源码MyBatis。
1 意义与难点
这本书最开始讲了源码阅读的优点,作者总结了四点:
透彻地理解项目的实现原理
接触到成熟和先进的架构方案
学习到可靠与巧妙的实施技巧
发现自身知识盲点,提升自身知识储备
然后讲解了为什么阅读源码十分困难,作者总结原因为每一个优秀的工程项目都凝聚了众多开发者的缜密思维逻辑;每一个优秀的工程项目都经历了从雏形到成熟的曲折演化过程。最终,这些思维逻辑和演化过程都会投射和堆叠到源码上,使得源码阅读的过程是一个通过源码去逆推思维逻辑和演化过程的工作,因此十分困难。
2 源码选择
阅读源码的一个重要工作就是选择合适的源码,作者总结了选择源码的几个纬度:
项目的成熟度
项目的应用广度
项目的涉及面
项目的规模
并给出了每个纬度的评判指标。
3 源码阅读方法
选好源码项目之后,要做的就是阅读源码。
作者介绍了源码阅读的方法、技巧、经验。主要包括两个大的步骤:
项目初探
源码阅读
在项目初探环节,主要是通过断点运行项目