2014年3月23日 星期日

Clean Code - function

不論是維護或者是開發時,

常常會遇到幾十、幾百甚至是幾千行的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裡面也應該只處理一件事。

沒有留言:

張貼留言