您的位置:首页 > 其它

重构15-Remove Duplication(删除重复)

2016-08-19 09:32 197 查看
这大概是处理一个方法在多处使用时最常见的重构。如果不加以注意的话,你会慢慢地养成重复的习惯。开发者常常由于懒惰或者在想要尽快生成尽可能多的代码时,向代码中添加很多重复的内容。我想也没必要过多解释了吧,直接看代码把。
public class MedicalRecord {
public Date DateArchived;//getter setter
public Boolean Archived;//getter setter
public void ArchiveRecord() {
Archived = true;
DateArchived = new Date();
}
public void CloseRecord() {
Archived = true;
DateArchived = new Date();
}
}

我们用共享方法的方式来删除重复的代码。看!没有重复了吧?请务必在必要的时候执行这项重构。它能有效地减少bug,因为你不会将有bug的代码复制/粘贴到各个角落。

public class MedicalRecord {
public Date DateArchived;
public Boolean Archived;
public void ArchiveRecord() {
SwitchToArchived();
}
public void CloseRecord() {
SwitchToArchived();
}
private void SwitchToArchived(){
Archived = true;
DateArchived = new Date();
}
}


来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: