博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《开源思索集》一如何提高阅读源代码的能力
阅读量:6113 次
发布时间:2019-06-21

本文共 851 字,大约阅读时间需要 2 分钟。

本节书摘来异步社区《开源思索集》一书中的第1章,作者: 庄表伟 责编: 杨海玲, 更多章节内容可以访问云栖社区“异步社区”公众号查看。

如何提高阅读源代码的能力

开源思索集

@johnniechau 推荐的《代码阅读方法和实践》,是一本好书,我只打算在这里简单地聊一聊自己的经验与思考。

我们先假设一种最恶劣的状况,你被迫接手一个遗留项目,原来做项目的家伙,全都四散逃亡了,不但没有任何说明文档,而且还找不到人,老板给你一段并不宽裕的时间,你得读懂他们的代码,然后接着维护……通常,这是噩梦的开始。

当然,从提高能力的角度而言,这是一个好机会。所以,@刘立 虽然只说了两个字“压力”,我认为的确正中要害!

我们可以用拼图这样的游戏,来做一个比喻。一地的碎片,你如何将他们尽快地拼在一起?

  • 寻找边角的块(除了四边都是凹凸的块之外,其他有一到两条边是直线的块,会少得多,也更容易辨认与拼接。)
  • 将碎块按大的色块分类,从一次查找变成二次查找。
  • 一开始碎块最多的时候,是最困难的时候,需要有足够的耐心、细心,以及一点点的运气。
  • 如果你的记忆力足够好,碰到的碎块能够在脑子里留下一定的印象,那么有助于你快速找到匹配的碎块。
  • 经验能够帮助你提高效率,熟能生巧。

回到代码阅读,我们来做一个类比:

  • 寻找代码中最明显的入手处,比如main函数,core文件夹,model、view、controller的三种大类等。
  • 从理解文件夹、文件名开始,而不是一上来就埋头进入源代码之中。
  • 一个好的全文搜索工具,能够帮你找到相关的代码与片段,渐渐地,看起来- 一团乱麻的代码,就会显现出各种可以被理解的关联出来。
  • 记忆力总是有用的,在脑子里绘出整个系统的架构,并且补充越来越多,越来越清晰的细节。
  • 一样是熟能生巧。
  • 相比拼图,代码阅读还要容易一些,你不需要理解全部的代码,有一个大致的理解以后,就可以先放过一些不太重要的细节。
    另外推荐阅读我目前正在写作的一份文档《借助开源项目,学习软件开发》——第五章:理解开源项目:link

转载地址:http://oejka.baihongyu.com/

你可能感兴趣的文章
Codeforces 520B:Two Buttons(思维,好题)
查看>>
web框架-(二)Django基础
查看>>
Jenkins持续集成环境部署
查看>>
emoji等表情符号存mysql的方法
查看>>
Excel到R中的日期转换
查看>>
检查磁盘利用率并且定期发送告警邮件
查看>>
MWeb 1.4 新功能介绍二:静态博客功能增强
查看>>
linux文本模式和文本替换功能
查看>>
Windows SFTP 的安装
查看>>
摄像机与绕任意轴旋转
查看>>
rsync 服务器配置过程
查看>>
预处理、const与sizeof相关面试题
查看>>
爬虫豆瓣top250项目-开发文档
查看>>
Elasticsearch增删改查
查看>>
oracle归档日志增长过快处理方法
查看>>
有趣的数学书籍
查看>>
teamviewer 卸载干净
查看>>
多线程设计模式
查看>>
解读自定义UICollectionViewLayout--感动了我自己
查看>>
SqlServer作业指定目标服务器
查看>>