技术债务的真相:不是代码问题,是决策问题
Posted by quentin 在 Wednesday, 8 April 2026最近在一次技术评审会上,我听到一位工程师说:"这段代码已经成为技术债务了,我们需要重构它。"当我追问为什么时,他回答:"因为写得很烂,难以维护。"
这是一个典型的误解。技术债务从来不是代码写得好不好的问题,而是在特定时刻做出的理性决策。把技术债务等同于"烂代码",就像把信用卡债务等同于"乱花钱"——你完全忽略了债务背后的战略选择。
一、重新定义技术债务
Ward Cunningham 在 1992 年提出"技术债务"这个概念时,他的本意是:为了更快交付价值,有意识地选择了一个不够完美但足够好的技术方案,代价是未来需要额外的工作来改进它。
注意三个关键词:
-
- 有意识:这是一个深思熟虑的决策,不是偷懒或能力不足
- 足够好:当前方案能够满足业务需求,只是不够理想
- 未来代价:团队清楚知道这个选择的长期成本
然而在实践中,我们常常把四种完全不同的东西都叫做"技术债务":