zhu327808
2024-09-14 11:33:52 +08:00
我最近接手的项目就是这样,只有一份代码,没有文档,只有一个可用的环境,我的方式是这样的,先理解产品的功能,从功能出发猜测大概是怎么实现的,当然要看的是主流程的功能,把一个整个功能流程了解透,再思考如果是自己做该怎么做
有了上一步的一个梳理带着到底是不是这么实现的,来看代码中的主要流程,先不要关注细节,梳理流程,然后把一整个代码的流程串起来
然后就可以开始解遗留的 bug 了,解 bug 的过程就是了解细节的过程,边解边把一些觉得值得重构的点打上 TODO
再然后就是接新的需求了,新的需求肯定是要改造现有的代码的,那就按自己思路做分层,实在改不动的代码就他妈先包成一个函数,写个自己能懂的函数名字,打上注释能用,不要轻易改动
我现在就是尽量自己的新写的代码就把以前的功能完全重构掉,改不动就封装起来,下层的代码尽量要稳定,上层可以快速迭代
当然屎山就是屎山,不可能一步到位,只能走一步看一步了,也没有时间来完全重写
ps:我这里是一个 golang 的项目,然后被各位大佬硬是写成了 java 的风格,我也是服气的,然后上了他们手撸的依赖注入,导致看代码逻辑都是乱的,你都不知道这个对象是从哪里来的,我的妈呀,头疼