函數參數中的布林標誌可能會使程式碼更難以閱讀和維護。讓我們看看為什麼應該避免它們以及可以做什麼。
使用布林參數通常意味著您的函數會執行兩件不同的事情,從而違反了單一職責原則 (SRP)。這是一個典型的例子:
這可能看起來很簡單,但它有幾個問題:
兩個函數合而為一:布林值就像開關,使函數做不同的事情
測試變得更加困難:您需要檢查函數的兩種工作方式
難以添加功能:如果您稍後需要第三個選項,您可能會添加另一個布林值,使事情變得更糟
將函數分割為兩個單獨的函數,每個函數執行一件事:
這給你:
清晰的名稱:createTempFile("log.txt") 準確地告訴您它的作用
簡單邏輯:每個函數只做一件事
輕鬆測試:每個函數只需測試一件事
新增功能簡單:需要新東西嗎?在不改變舊功能的情況下新增功能
這個想法在很多情況下都有效。以下是一些案例:
函數參數中的布林標誌通常表示函數嘗試執行的操作過多。製作單獨的、集中的函數會建立以下程式碼:
下次您想要新增布林參數時,請考慮建立兩個函數。
您是否嘗試過在程式碼中拆分這樣的函數?有幫助嗎?請在評論中告訴我!
以上是乾淨的程式碼:為什麼函數參數中的布林標誌是一種程式碼味道的詳細內容。更多資訊請關注PHP中文網其他相關文章!