重构指南 - 移除重复内容(Remove Duplication)

在项目中或多或少的都存在着重复的或者功能相似的代码,如果要对代码做改动,就要修改多个地方,所以我们需要将多处重复的代码提取到一个公共的地方供统一调用,以减少代码量,提高代码可维护性。

重构前代码

public class MedicalRecord
{
    public DateTime DateArchived { get; private set; }
    public bool Archived { get; private set; }

    public void ArchiveRecord()
    {
        Archived = true;
        DateArchived = DateTime.Now;
    }

    public void CloseRecord()
    {
        Archived = true;
        DateArchived = DateTime.Now;
    }
}

重构后代码

public class MedicalRecord
{
    public DateTime DateArchived { get; private set; }
    public bool Archived { get; private set; }

    public void ArchiveRecord()
    {
        SwitchToArchived();
    }

    public void CloseRecord()
    {
        SwitchToArchived();
    }

    private void SwitchToArchived()
    {
        Archived = true;
        DateArchived = DateTime.Now;
    }
}

 

posted @ 2017-01-19 09:24  <HOU>  阅读(318)  评论(1编辑  收藏  举报