如何阅读源代码 博客
  • 滴水逆向 等级 V0
    2020-08-12 20:21

    在开源盛行的今天,我们经常可以在各种社区接触到各式各样的源码。然而对于很多人来说,一看到代码就头大,并不知道源码的作用,不知道如何利用学习这类资源。

    首先,我们应该明白我们为什么要学习源码?代码就像是人对着机器说话,一般情况下,源码只会告诉你实现,告诉你细节,而不会告诉你为什么这么实现?这么实现是为了什么?这也是我们读代码经常一头雾水的原因。

    我们应该明确自己的目的,如果我们是要了解一个项目的功能,了解他们的思想,了解他们的原理,那么我们应该学习的是文档,学习的是相关的基础知识,而不是看代码。

    如何阅读源代码

    什么情况下我们适合去看源码?我认为有下面几种比较常见的场景。

    1. 没有文档,没有注释。(这也许是日常工作中90%遇到的坑爹场景)
    2. 当我们使用某个功能时,得不到对应的预期或者遇到瓶颈,需要仔细阅读代码。
    3. 当我们自己实现某个功能,觉得自己的代码特别搓,或者难以实现的时候,可以选择看别人怎么实现,怎么封装。

    更多时候,我们更应该看文档,甚至应该看书,才能够把知识点连成线,如果没有一定的基础知识,再华丽的代码也只是if else,枯燥无谓。

    如何阅读源代码

    那么如何阅读代码呢?我觉得首先应该掌握下面几点:

    1. 了解项目功能,知道这个项目是做什么的。尝试按照自己的理解,要实现这些功能,大概的软件框架是怎么样,有什么难点。这样能够在阅读的时候抛出更多问题,与代码进行交流。
    2. 再把对应的项目跑起来,看看每个功能大概是什么样子。对项目有大概的认识。
    3. 阅读相关文章,了解核心思想。看看有没有前人对该项目的分析,学习项目的主要思路以及一些亮点。这样子我们在阅读代码的时候才能够有的放矢,在关键核心地方多留一些心思。
    4. 了解代码的目录结构,知道代码是如何组织的。
    5. 学习相关的基础知识,如果项目的核心是某种算法、某个数据结构,都应该先了解相关的基础知识,才能够学习到项目的核心。
    6. 找到核心代码进行阅读,一般的项目代码,超过一半都是错误处理、基本的DO、DAO、等对象,这些只要稍加了解即可。
    如何阅读源代码

    最后,我们应该充分利用一些工具,例如一些IDE,可以把一些代码调用图画出来。其次,要多动笔,多画画时序图、流程图、模块组织图。都是对我们理解代码极好的。百见不如一试,把程序跑起来,通过debug模式打断点,或者增加日志,有助于更好的了解代码。

  • 浏览 60
  • 点赞 0
  • 收藏 2
  • 分享 2
  • 查看云盘地址请登录
  • 点赞 已赞 收藏 已收藏
评论 (1)
    页 到
    talk 1 top
    展开
    >