🎯 什麼情境該想到我
當你「一個區域變數的名字並沒有比它所指的運算式帶來更多意義」的時候——直接用運算式取代這個變數,去掉多餘的一層,讓程式更精簡,也常常是為了讓後續重構更好做。
⚙️ 怎麼用(步驟 / 公式)
意圖:當變數名沒比運算式本身帶來更多意義時,用運算式取代它。
動作要點(小步安全進行):
- 確認指派給該變數的運算式沒有副作用。
- 若該變數尚未宣告為不可變,先設為不可變並測試,確認它只被賦值一次。
- 找出第一處使用該變數的地方,換成它的運算式。
- 編譯、測試。
- 逐一替換其餘使用處,每次都測試。
- 全部替換後刪除該變數的宣告與賦值。
🧪 我實際套用的紀錄
- (待填)
⚠️ 注意 / 什麼時候不適用
- 若變數名有解釋意圖的作用、或運算式重複計算成本高、或它讓除錯更容易,就保留變數,甚至反向做提煉變數 Extract Variable。
- 反向手法:提煉變數 Extract Variable。
🔗 相關工具
- 提煉變數 Extract Variable(本手法的反向操作)
- 行內函式 Inline Function(同樣是去掉不必要的間接,只是對象是函式)
- 重構