Java并发编程之美读书笔记(一):源码阅读的意义和方法

562 阅读1分钟

源码阅读的意义

  • 开阔视野,通过阅读源码了解未知的或者不熟悉的设计模式
  • 熟悉已有业务,以便在其基础上进一步开发
  • 熟悉框架或系统,较少故障的发生

源码阅读的方法

  • 阅读方法文档,了解该框架有几个模块,模块的功能,模块间的联系
  • 对那个模块感兴趣就写个小demo,先了解该模块的具体作用,然后再debug进入看具体实现。debug过程可以多遍:
    • 第一遍 走马观花:简略看一下调用逻辑,都用来哪些类
    • 第二遍 重点debug: 看看这些类担任了架构图中的哪些功能,使用了哪些设计模式
    • 第三遍 画图: 如果两遍之后仍然对代码结构不是很清晰,比如多个类间来回调用,很容易遗忘当前断点的来处,此时可以进行第三遍debug,这时候最好把主要类的调用时序图以及类图结构画出来,等画好后,再对着时序图分析调用过程,就可以清楚的知道类之间的调用关系,而通过类图可以知道类的功能和类之间的依赖关系
    • 开源框架里面每个功能类或者方法一般都有注释,这些注释是一手资料,比如 JUC 包里的一些并发组件的注释,就已经说明了它们 的设计原理和使用场景
  • 注意 在阅读源码时,最好画出时序图和类图,因为人总是善忘的。这样再次需要阅读源码时就会节省很多时间