我为什么不再执着于技术优雅

21 阅读2分钟

刚工作那几年,我做技术决策时有一个执念:

这个方案够不够优雅?

架构要干净、代码要解耦、设计模式要标准、命名要完美。 但这几年下来,我发现自己越来越少为了“技术优雅”去做决定了。

不是我不在乎技术了,而是我开始在乎更重要的东西


一、技术优雅,往往不是问题的核心

在真实项目中,大多数问题并不是因为“不够优雅”。

而是:

  • 需求变得太快
  • 时间窗口非常短
  • 上线压力远大于技术理想

你花三天时间设计一个“完美架构”, 但业务可能一周后就推翻方向。

优雅 ≠ 有价值 至少在那个时间点不是。


二、系统的第一目标,是“活着”

后来我慢慢接受一个现实:

系统的第一目标不是优雅,而是可运行、可迭代、可止损

很多项目:

  • 架构不完美
  • 代码有历史包袱
  • 命名不统一

但它们:

  • 稳定
  • 能快速响应需求
  • 能被新人接手

这类系统,在现实世界里,反而“活得更久”。


三、过度追求优雅,常常带来隐性成本

我踩过不少这样的坑:

  • 为了“解耦”,拆了过多模块
  • 为了“扩展性”,引入复杂抽象
  • 为了“设计感”,写了没人敢改的代码

结果是:

  • 调试成本变高
  • 新人理解成本极高
  • 线上问题定位变慢

优雅只对设计者友好,对维护者未必。


四、我现在如何做技术决策

现在我更多问自己这几个问题:

  1. 这个方案 3 个月内会被推翻吗?
  2. 有没有人能在 30 分钟内读懂?
  3. 出了问题,能不能快速定位?
  4. 是否真的需要为“未来”提前设计?

如果答案不理想,我宁愿:

  • 写普通一点
  • 简单一点
  • 可控一点

五、我不是不追求优雅,而是更克制了

说清楚一件事: 我不是反对技术优雅。

我只是明白了:

  • 优雅是“锦上添花”
  • 可交付、可维护、可演进才是“地基”

真正成熟的技术人, 不是写最漂亮的代码, 而是知道什么时候值得优雅,什么时候该克制


结尾

如果你也发现自己:

  • 越来越务实
  • 越来越在意稳定和节奏
  • 不再执着于“完美设计”

恭喜你, 你可能正在从“技术爱好者”, 走向“工程负责人”。