核心概念

技術債(technical debt)

技術債(technical debt)是為了更快上線,你此刻選擇走一條又快又糙的捷徑,將來要付出的代價——這個捷徑以後得靠認真返工來償還。

和真正的債一樣,它有時是筆聰明的交易。為了趕上截止日期借點時間沒問題,只要你記得自己借了。危險的是「利息」:你留下的每一個捷徑,都會讓下一次改動慢一點、險一點,而利息會複利滾動。拖得太久,一個本該一天搞定的功能開始要花一週,因為你不停被自己當初留下的爛攤子絆倒。

不是所有的債都魯莽——有時先糊弄一下,才是驗證某個想法到底行不行的正確做法。成熟的做法是把它說出口(「這是臨時的」)、記下來,並預留時間去償還,趁利息還沒把你生吞活剝之前。

// TODO: hardcoded for the demo — replace before launch
const API_KEY = "test-123";  // <- this is a tiny loan you took

這樣一條 TODO,就是把技術債寫在你日後找得到的地方。

這個比喻出自 Ward Cunningham:借債沒關係,只要還得上;麻煩的是那筆利息。

又稱
tech debtcode debtdesign debt