"重構"
- 依職責拆分文字文件:修改紀錄的訊號、切法與拆完之後的引用
規則文件、操作手冊與範本的拆分:從版本歷史讀出一份文件承擔幾種職責,依職責而非長度決定切法,原檔保留導覽表、同一條規則只定義一次,以及拆完之後更新引用與檢查新檔之間的指引缺口
- 重構前先讀設計文件:Domain Root 的檢查順序
Domain 層的核心實體要重構、而看得到程式碼形狀卻不確定它的業務意圖時,用來決定設計文件、測試、實作三者的檢查順序
- 規則文件的精簡:用 Progressive Disclosure 分出常駐內容與參考細節
規則文件膨脹之後的精簡:Progressive Disclosure 的四層分法(快查表、強制規則、決策流程、參考細節)、把參考細節移出常駐文件的做法、一次規則文件精簡的前後量測,以及過度精簡、只按章節切開與移出後未留入口這幾種失誤
- 測試失敗時,改程式還是改測試
測試紅了而不確定該調整實作還是調整期望值時,用來分類失敗原因、以及判定什麼條件下才准動測試
- 程式碼自然語言化撰寫方法論
讀自己或別人的程式碼要反覆回上面確認變數與縮寫時,用來把命名、函式長度、變數用途還原成可逐項檢查的撰寫規則