|
系列博客
1. 改善代碼設(shè)計(jì) —— 優(yōu)化函數(shù)的構(gòu)成(Composing Methods)
2. 改善代碼設(shè)計(jì) —— 優(yōu)化物件之間的特性(Moving Features Between Objects)
3. 改善代碼設(shè)計(jì) —— 組織好你的數(shù)據(jù)(Composing Data)
4. 改善代碼設(shè)計(jì) —— 簡化條件表達(dá)式(Simplifying Conditional Expressions)
5. 改善代碼設(shè)計(jì) —— 簡化函數(shù)調(diào)用(Making Method Calls Simpler)
6. 改善代碼設(shè)計(jì) —— 處理概括關(guān)系(Dealing with Generalization)
1. Extract Method (提煉函數(shù))
解釋:
如果發(fā)現(xiàn)一個(gè)函數(shù)的代碼很長, 很可能的一種情況是這個(gè)函數(shù)做了很多事情, 找找看函數(shù)中有沒有注釋, 往往注釋都是為了解釋下面一塊代碼做的什么事情, 可以考慮將這塊代碼提煉(Extract)成一個(gè)獨(dú)立的函數(shù).
這樣做的好處不言而喻, 是面向?qū)ο笪宕蠡驹瓌t中的單一職責(zé)原則 (Single Responsibility Principle), 比較長的函數(shù)被拆分成一個(gè)個(gè)小函數(shù), 將有利于代碼被復(fù)用.
沖動(dòng)前:
public void Print(Employee employee)
{
//print employee's information
Console.WriteLine("Name:" + employee.Name);
Console.WriteLine("Sex:" + employee.Sex);
Console.WriteLine("Age:" + employee.Age);
//print employee's salary
Console.WriteLine("Salary:" + employee.Salary);
Console.WriteLine("Bonus:" + employee.Bonus);
}
it知識(shí)庫:改善代碼設(shè)計(jì) —— 優(yōu)化函數(shù)的構(gòu)成(Composing Methods),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。