Technical Debt
今天走捷径所带来的未来成本,会以交付变慢的形式偿还,直到捷径被修复为止。有时是聪明的交易,有时是无意的烂摊子,最危险的是没人看得见它。
最近审阅: 2026-06-02
审阅人Kevin Riedl
wiki ↗
技术债是一个比喻,而且是个好比喻。当你为了更快交付而走捷径时(用一个快速的临时方案代替干净的设计,用一个硬编码的值代替配置系统),你现在借来时间,以后则以利息的形式偿还:那块区域里每一次未来的改动都会更慢、更冒险、更让人烦。和金融债务一样,它并不自动是坏事。它是一种工具。
有意承担债务往往是正确的决定。在产品市场契合之前,速度胜过优雅,因为你构建的大部分东西反正都会被丢弃。为一个六个月后可能不复存在的产品打造一座无瑕的架构,本身就是一种浪费。正确的做法常常是走捷径、交付、学习,然后在你确定这东西值得保留之后再偿还债务。
危险不在于债务,危险在于看不见的债务。有意的、有记录的债务(“我们把这个硬编码了,这里有在扩展前修复它的工单”)是一项被管理的负债。没有记录、没人决定要承担、只是在匆忙和人员流动中堆积起来的债务,才是悄悄绞杀代码库的烂摊子。速度下降,没人说得清原因,每一次估算都翻倍。等它在指标中变得可见时,利息已经复利累积了一年。
Wavect 的立场:债务是一种有意的权衡,而不是道德上的失败。我们乐于承担债务来赶上某个时间窗口,并且会准确写下我们承担了什么以及偿还它要花多少代价。我们拒绝跳过的那场对话,是有人正在付利息而没人为这笔贷款命名的那一场。看看我们的全栈开发工作,了解我们如何让这种权衡保持明确。
// FAQ