码迷,mamicode.com
首页 > 其他好文 > 详细

2.2 搬移字段

时间:2017-08-10 21:02:00      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:str   新建   函数   顺序   font   字段   color   public   mil   

【1】源代码

 1 // 重构前
 2 class Account
 3 {
 4 public:
 5     double interestForAmount_days(double amount, int days)
 6     {
 7         return m_dInterestRate * amount * days / 365;
 8     }
 9 
10 private:
11     AccountType m_type;
12     double m_dInterestRate; // 利率随类型变化,所以准备搬移该字段
13 };

【2】搬移字段

// 重构后
class Account
{
public:
    double interestForAmount_days(double amount, int days)
    {
        return m_type.getInterestRate() * amount * days / 365;
    }

private:
    AccountType m_type;
};

class AccountType
{
public:
    double getInterestRate()
    {
        return m_dInterestRate;
    }
    void setInterestRete(double dValue)
    {
        m_dInterestRate = dValue;
    }

private:
    double m_dInterestRate; // 利率随类型变化,所以准备搬移该字段
};

【3】总结

程序中,某个字段被其所驻类之外的另一个类更多的用到。在目标类新建一个字段,修改源字段的所有用户,令他们改用新字段。

如果发现,对于一个字段,在其所驻类之外的另一个类中有更多函数使用了它,我就会考虑搬移这个字段。

 

Good Good Study, Day Day Up.

顺序 选择 循环 总结

2.2 搬移字段

标签:str   新建   函数   顺序   font   字段   color   public   mil   

原文地址:http://www.cnblogs.com/Braveliu/p/7341091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!