適度間接層(Indirection)可以帶來幫助,但不必要的層次只會造成阻礙。
當程式碼中有太多瑣碎委託——函式僅呼叫另個函式而模糊了真正意圖——就是內聯時機。

Inline Function

何時該內聯函式?

  • 過度間接:函式除了委託給另個函式外什麼都不做,讓人看不清真正邏輯
  • 清晰優先於抽象:內聯小型、簡單的函式,讓呼叫方直接展現真正的意圖
  • 效能非首要考量:現代編譯器通常會自動優化內聯,主要目標是可讀性

範例#

重構前#

def calculate_product(x, y):
    return x * y


if __name__ == "__main__":
    result = calculate_product(5, 10)
    print(result)

重構後#

if __name__ == "__main__":
    result = 5 * 10
    print(result)