不論是維護或者是開發時,
常常會遇到幾十、幾百甚至是幾千行的function,
當然再一邊抱怨的同時,
也同時告誡自己不要創造出如此的怪物,
在clean code中有提到一些寫function的建議:
1.只做一件事
每一個function應該只有一個目標,
只要完成一個工作,
例如if、else、while,
也應該只包含一行呼叫function的敘述,
當把握這個原則後,
你的function內也不會有幾百幾千行的code。
2.使用具描述能力的名稱
如同命名原則一樣,
countOfItem()的function應該會比count()這樣的名稱容易理解,
在思考function名稱時,
以能讓別人一眼看到就知道其含意為原則。
3.不要傳遞旗標參數
不要讓你的function接收true/false這樣的參數,
除了代表你的function做了不只一件事外,
也會影響命名function的難度。
4.以物件傳遞代替一串參數
function接收的參數盡量越少越好,
如果需要傳遞一整串的參數(2、3個以上),
可以使用物件來封裝傳遞。
5.使用try/catch代替錯誤代碼
避免使用錯誤處理代碼如error_code_1,
利用try/catch/finally來代替error_code,
就能將錯誤處理代碼的敘述抽出來並簡化,
且try/catch/finally裡面也應該只處理一件事。
沒有留言:
張貼留言