• 为什么你的代码会变得越来越腐败?
  • 发布于 3小时前
  • 10 热度
    4 评论
  • 且醉
  • 0 粉丝 47 篇博客
  •   
以前只是人云亦云地附和“技术债”,没细想,最近发现“需求变更”才是根源。例如,领导说我们养个动物吧,比如仓鼠,然后你搭了一个小窝,结果领导牵来一头大象,你要么把窝改得不伦不类,要么拆了重盖。这种需求与架构的不匹配,就会把原本良好的架构拉扯得稀碎。浅聊一点技术债是怎么产生的?它可能是需求变更中一点点积累的,也可能是突然离谱需求导致实在没法适配的。

开发者面临的困境是,只能设计出符合项目最初需求的合理架构,没办法预知未知需求,但“需求变更”既合情合理也是常态。比如领导可能有一天会把大象换成鲸鱼。所以,代码是注定会腐败的吗?按常规思维来说是的,因为需求会一直变。但这也刚好暗示了应对方法:既然需求肯定会变,那么找到一种能适配需求多变,并且不会破坏已有代码的方法就好了,一种始终具有稳定性的方法。
用户评论
  • 神探不二
  • 就是需求变更,一个项目其中一部分代码全程是我自己实现的,持续多年后一样一塌糊涂。原因就是需求变更。每次增加新需求都要修改代码,然后老功能还不进行移除,有时候一个逻辑根据多个配置能走多个互相交错的代码路径。我这还算好,时间足够会同步实现测试。但是后期时间紧张时测试就开始跟不上了。

    有的项目乱倒一定程度后,我强硬进行重构,把功能改成插件式的就好多了。但是一些项目并没有那么好做,特别是为了性能不能封装,或者即时封装也要向上层暴露一定细节就很烦了。

  • 2025/10/22 9:18:00 [ 0 ] [ 0 ] 回复
  • 叫我冷场王
  • 最近在深入学习技术债的知识,有一本书特别好《管好技术债 低摩擦软件开发之道》,中文翻译的不是很好,有能力建议阅读英文书。本质上软件系统是与其所在环境强绑定的,当环境发生变化时(如需求变化)就需要对系统进行调整,如果不及时调整就会与环境不适配,也就是你所说的“腐败”。
  • 2025/10/22 9:13:00 [ 0 ] [ 0 ] 回复
  • 爱是蓝色.
  • 要想不烂,就必须定期花时间重构,但是重构这件事在管理者看来是没有收益的,所以大部分人选择不做,“暂时能用就好,烂的时候说不定我都走了”
  • 2025/10/22 9:10:00 [ 0 ] [ 0 ] 回复