屎山代码为什么不去重构的探讨

发布时间:2024年01月18日

背景

  • 现在公司的产品,从出生到现在已经有十多年了,现在仍然在持续的功能构建中。当然我来这里,看代码才几天的时间,那是憋得是相当难受,看一下,其中的一段比较核心的逻辑的代码,一张图截不了,是的,你没看错,上千行的一个函数挺多,里面大量的if else,上面还有各类人员的脚注,5*5 的二十五种算法,苦恼的是现在又要加一个case,那到底重构吗?

  • 这个问题,其实如果说它在那安静的躺屎的话,没有人愿意去打扫它,可是,这是一款产品,每年卖的还是可以的,你说恶心不,并且客户还是要代码的,你能由此想到什么,如果,我copy出一些写法,估计你可能比看到屎还恶心!

根据屎山的推测

产品开发者水平

  1. 是不是很不负责任?
  2. 是水平问题,能力问题,时间问题?
  3. 代码巨大、没有重构、不断堆砌
  4. 技术人员水平较低
  5. 业务压力原因,一再妥协
  6. ……

国内开发者水平

  1. 为何这样的产品还能活在世上
  2. 国内开发者的水平和态度
  3. ……

屎山代码的思考

系统正常运行

尽量不要碰它,有bug能修改,尽量少动代码。

增加功能

  • 因为加功能和重构完全是不一样的。我记得有另外一个问题是问:为什么有人说只要代码能运行就不要去碰它。
  • 这恰恰就是说的这种情况。屎山本身内部在维持一个微妙的平衡,很多地方都是正好只有这一个点是OK的,你稍微改一下就稀里哗啦如同多米诺骨牌一样的结果。但是这很多时候并不妨碍你加东西。你只需要注意不要去改变原来的结构就是了。这就好像操作系统在执行屎山的时候,也能并行执行其它任务一样。对于屎山,你需要做的就是尽量将你新加的加在外部,而不是内部。
  • 这种情况,做法和解释我是认同的。

产品不停迭代

  • 目前就是这种情况,我很崩溃。又炸不了,那是一坨一坨的,要在上面,弄些2024年新鲜的吗?
  • 敢于重构产品的团队,才是牛逼的团队
  • 坚持屎山的团队,是没有未来的团队……

你猜我会咋办

……

……

……

文章来源:https://blog.csdn.net/wildhorseli/article/details/135670427
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。