阅读代码得到的经验
重构形成VeriFY时,我学到了以下几点
what->how(why)->do
阅读和产出的步骤
从使用开始
为什么要从使用开始呢?
连使用所涉及到的调用参数都无法清晰了解,看源码就是一头雾水
PS: 我就是一开始看了部分使用方法就上手源码,belike: “转圈圈,这是啥?”
跟着调用链路走
这一步可能属于比较关键的一步,调用的链路所涉及到的方法几乎都是核心
要清楚链路上发生了什么,怎么才能被触发(这一步也解释为什么要从使用开始)
拆分
目的:理解并消化
当遇到链路上无法理解的代码时,就直接拆分出最小可执行函数
有时候并不是笨,而是东西太大,还没有时间去消化
拆分出最小可执行函数的目的就是为了消化
注释
目的:明白源数据转换过程
进入了什么数据结构,转换成(产生)什么数据结构,都可以用注释标记出来
专注
目的:为产出做铺垫
对于一个复杂的程序肯定有多条链路合并而成,但我们只需专注单一链路
不要让其他链路的代码干扰当前链路的理解,直接注释掉或删除
写出最小可行性产物
只要最小可行性产物,也就是说只写出已学习的单一链路
只要理解单一链路,相当于理解了核心,其他就像积木一样也能随着拼接出来
结束语
吃饱了肯定要消化的,代码也是一样,不可能一口就吃饱
当遇到不理解的代码,要有耐心,有信心
前人写的代码也必须经历无数的头脑风暴,无数的修改,无数的重写,还有无数的日日夜夜
要成为巨人就得经历过程
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Skiyee's Blog