支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信

支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信

文章图片

支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信

文章图片

支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信

文章图片

支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信

文章图片

支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信

开头之前说一段我自己的经历吧 , 记得还是2010年我加入了创业时期的360 , 担任高级工程师的一个职位 , 当时我们的项目组负责开发一个远程控件 。

这个控件是和操作系统底层打交道的 , 当我入职后才发现项目代码已经完全耦合的不像样子了 , 一个主类可以写十几万行 , 有些函数甚至可以写到几万行 。

【支付宝|代码能跑就不要动,背后的的辛酸是什么,说出来你可能不信】我记得我们的技术leader最长说的一句话就是 , 这些代码能跑起来就不要想着去改 。

后来 , 副总裁给我们项目组安排一个任务 , 看起来是一个大功能 , 这leader直接不会做了 , 带领项目团队一个月硬是没做出来 。 副总裁当时就怒了 , 然后又安排了一个技术leader进来 。

面对前任留下来的耦合严重屎一样的代码 , 这个leader会上下决心决定要重构这些代码 , 当时真的压力山大 , 我们项目组的任务都安排的满满的 。 如何重构这些旧的框架 , 是我们项目组必须面对的问题 。

至今我还记得那个十几万行代码类的时候 , 自己的心情是崩溃的 , 这样的日子坚持了半年 。 每天都要极限code , 加班加点 , 到了上线的日子 , 我们几个小弟尝试着上线 , 可是怎么都运行不起来 , 然后各种分析问题 , 找错 , 整依赖 , 大概一个月后 , 我记得这个项目才运行起来 。

但是上线后 , 真的是各种大bug , 小bug不断 , 有的时候一天项目损失几十万都是常事 , 最后实在没办法 , 还是跑老代码吧 , 不然这样损失下去 , 我估计我们整个项目组都会被裁 。

我们看到一坨屎一样的代码 , 为什么不能动?
首先代码无论如何混乱 , 都是经过一层一层测试 , 一层一层迭代出来的 , 既然项目已经做到了千万 , 这个时候代码无论多么垃圾 , 我们也不要动它了 。

其次 , 你动别人的代码 , 你自己肯定不会知道有什么坑埋在里面 , 出了问题还很麻烦 , 即使是重构 , 需要更长的时间 , 物力 , 财力 , 最后重构出来的东西也有可能不能用 。

最后我们要相信线上跑的东西肯定是经过验证的 , 这些验证的东西跑起来一定是无风险的 , 无论是对收益还是对于企业 , 都是百利无一害 , 我们为什么要去动它呢?