用引數控制程式碼邏輯可能是最經典的錯誤編碼習慣,我在公司的專案程式碼中見到過好幾次類似編碼,包括我本人在職業生涯初期也編寫過類似的程式碼。
什麼叫引數控制程式碼邏輯?我們可能經常在專案中看到過類似這種程式碼:
func Worker(isA bool) {
if isA {
// codeBlockA
}
// repeatedCodeBlock
}
上面示例程式碼就叫做引數控制程式碼邏輯,它經常發生在我們想複用程式碼的時候。然而它並不是複用程式碼正確的“姿勢”,它是我們程式碼中的“壞味道”,為什麼這麼說呢?
我在我自己的部落格寫了一點心得,詳細內容請看:為什麼說不要用引數控制程式碼邏輯
本作品採用《CC 協議》,轉載必須註明作者和本文連結