美文网首页
如何阅读源代码

如何阅读源代码

作者: mr_franklin | 来源:发表于2017-03-20 15:01 被阅读88次

    俗话说 听君一席话,胜读十年书。阅读好的源码,正如和智者聊天,受益无穷。

    那么如何能更加高效的阅读源代码呢?

    首先,可以把源码分成两类:
    一类是某些功能性的代码,这类代码往往规模比较小,通读一遍一般不需要耗费太多时间。阅读源码的方法想来也简单,只要保持在特定代码上的专注,多投入点时间,攻克它相信不会有太大难度。
    另外一类就是大型项目的源码了。这类源码由于其是由多个功能模块组成的,往往代码量庞大,不太可能在短时间内读完。这时候就需要一些方法来解决阅读源码的问题。

    下面谈谈我认为阅读这类源码最有效的几个方法。

    首先是读源码的开发文档和api文档。文档其实是作者思路的体现,它使我们能对源码架构和功能能有个比较深刻的了解。通过阅读源码的相关文档,经常会发现之前怎么读都读不明白的地方,突然变得豁然开朗!另外,强烈建议直接读英文文档,而非翻译成中文的“二手资料”。英语是程序员的必备技能,英文看不懂怎么办?那就去学,早学早受益!

    其次是debug。在debug之前,要先让代码能在IDE里跑起来。sublime,vim等代码编辑器有其自身的使用场景,但个人认为在debug代码这一块并不适合;专业的IDE在调试代码的同时,能够观察变量的值和堆栈信息,能够分析方法和类之间的关系,有助于我们理清思路。除了打断点,还可以通过打印log的方式调试源码。

    再然后是做笔记。为了各个功能模块之间的关系,可以通过画类图,画思维导图等方式,将一个大项目层层拆解成多个相对独立的部分,再将它们逐个击破。画类图推荐使用 plantUML,这是一款通过写脚本的方式生成类图的软件,很适合程序员使用。而思维导图的软件就有很多了,我本人经常使用百度脑图和processon。

    最后可以多读源码自带的单元测试代码,单元测试的代码相当于项目的sample,包含着功能点和相关用法。还可以自己写单元测试代码,自己实践一遍有助于加深理解。

    源码阅读是个长期积累的过程。刚开始的时候可能感觉很吃力,无从下手。但只要通过持续的投入,再辅以正确的方法,就一定能会有收获,会驾轻就熟。
    所以,just do it,now!

    相关文章

      网友评论

          本文标题:如何阅读源代码

          本文链接:https://www.haomeiwen.com/subject/qxobnttx.html