如何快速掌握令人吐血的超大型接口业务

image

大家应该都有遇到过:那种看完代码后,开始怀疑人生的场景吧,很多创业公司,刚开始为了赶业务或者开发人员水平限制,对代码质量没有任何的要求。

可以说是三无产品:

  • 接口没有注解说明
  • 实体类字段没有一丁点描述
  • 最重要的是数据库字段也没有备注
  • 更坑的是字段命名也是随便起的

这个时候让你去维护代码,你会不会有分分钟钟想跑路的感觉。

博主最近一段时间就遇到一个这样的接口,刚开始的时候有想跳楼的冲动,感觉不是在看代码,而是在看佛经。

复杂的接口一般都有很多if判断,有很多函数调用,然后就是业务逻辑也复杂,有很长的代码。当然如果文档和注解都很全的话,基本就没什么大的问题,但是一般这种历史遗留接口,都不会有这些文档和注解。

那我们该如何解决这些问题呢,如何读懂一个古老级接口呢?

1.
首先我们要先搞清楚接口的数据流,也就是请求参数和返回值的含义,特别是请求参数一定搞清楚,一般每一个参数都有很重要的意思。返回值有益于理解接口的大致逻辑,如果是查询性质的接口,就更能体现接口到底在查询什么数据,如果是修改性质的接口,则借鉴性就会比较低。

2.
顺着接口业务逻辑一直往下读,遇到函数调用的可以先记着,然后边看边记逻辑分支。比如像博主我用的就是visio,通过visio画出整个接口的流程图,梳理完接口也就顺便画出接口的逻辑流程图了。

image

3.
最后将上一步骤记下来的函数,应用上述方法,理解函数中所写的业务逻辑。

4.
在看的过程中,可以不断的优化接口的注解,补充参数、返回值、方法等相关注解。

5.
最后整理一份此接口核心业务数据库交互资料,理解涉及到的库表具体是什么作用,并画出他们之间的关联关系图或者ER图。

6.
最后用思维导图总结一下接口的逻辑以及接口的重难点,有助于我们理解接口的整体情况。

总结:

上述的方法是博主以自身实际情况总结的,如果觉得有用可以采纳,如果觉得和自身不相符,借鉴一下思路即可。这是理论层面的阅读,最重要还是得看实际动手能力,通过修改功能或者修改bug,可以快速的理解并掌握这类接口。

注意事项:

这类超复杂接口千万不要随便修改代码,我们可以加上我们自己的注解,可以优化一些重复性的代码,但是千万不要去碰业务逻辑代码,这有可能是灾难的。

林老师带你学编程https://wolzq.com

林老师带你学编程 wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!