色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

改善代碼設(shè)計(jì) —— 優(yōu)化物件之間的特性(Moving Features Between Objects)

  系列博客

      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. Move Method (函數(shù)搬家)

  解釋:

        如果 ClassA 的某個(gè)函數(shù)對(duì) ClassB 有過多的依賴, 可以考慮將這個(gè)函數(shù)搬到 ClassB 中, 在 ClassA 的這個(gè)函數(shù)中直接調(diào)用 ClassB中這個(gè)函數(shù)的返回值.

        這樣做的好處是減少物件與物件之間的耦合度, 很多情況下這樣做更利于進(jìn)一步的重構(gòu).

  沖動(dòng)前:

class EmployeeSalary
{
private double baseSalary = 15000.0;

public double Salary(Employee employee)
{
return baseSalary + 10000 / employee.Level;
}
// other method with baseSalary
}
class Employee
{
public int Level { get; set; }
}

NET技術(shù)改善代碼設(shè)計(jì) —— 優(yōu)化物件之間的特性(Moving Features Between Objects),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 南宁市| 宁波市| 自治县| 友谊县| 商洛市| 色达县| 全南县| 启东市| 古田县| 嘉义市| 扶风县| 公安县| 常宁市| 大荔县| 渭南市| 桂阳县| 锡林郭勒盟| 洛南县| 邢台县| 凉城县| 双鸭山市| 威信县| 蓬安县| 靖西县| 奉化市| 农安县| 抚宁县| 筠连县| 嘉义县| 砚山县| 安丘市| 陇川县| 温泉县| 苗栗县| 阜南县| 临江市| 德惠市| 读书| 安溪县| 北安市| 镇原县|