學習代碼整潔之道,儘量提高代碼的可讀性。
對於函數的要求:
1、20行以內,縮進小於3層。
2、只做一件事情。
3、涉及的事情,要保持在一個抽象層級。
4、switch語句,要考慮是否可以用多態代替,對修改關閉,對擴展開放。
5、函數名使用描述性的名稱,不要用簡寫,現在的編譯器支持很長的字符串,用好動詞與關鍵字。
經常出現的情況是:
1、函數很長,影響閱讀。
2、處理多個事情,邏輯複雜,違反“單一權責”。
3、違反“開閉原則”。
4、函數名簡寫,意思不明確。
關於函數輸入參數:(從簡單到複雜的情況)
1、一元參數
2、二元參數
3、三元參數
參數越多,情況就越複雜,可以想象單元測試所需要的樣本量與參數個數的關係。
標示參數:即輸入參數爲布爾型,光明正大的告訴別人,這個函數不只處理一個事情。
不要將輸入參數,用作輸出用途,譬如byte[],會引起理解上的混亂。
關於錯誤處理:
1、使用異常替代返回錯誤碼,代碼會變得簡潔。
2、錯誤處理就是一件事。
3、對於新異常,可使用異常類派生的方法實現。
不要重複自己,即不要存在兩份相同的代碼片段。
完美的代碼不是一開始就寫成的,開始的代碼都冗長而複雜,通過以下步驟:
1、分解函數。
2、修改名稱。
3、消除重複。
這其中涉及縮短和重新安置方法,拆散類。在多次循環後,代碼更趨向於完美。