首页 > 代码库 > 重构指南 - 引入参数对象(Introduce Parameter Object)

重构指南 - 引入参数对象(Introduce Parameter Object)

当一个方法的参数超过3个以上,就可以考虑将参数封装成一个对象。将参数封装成对象后提高了代码的可读性,并且该参数对象也可以供多个方法调用,以后如果增加删除参数,方法本身不需要修改,只需要修改参数对象就可以。
 
重构前代码
 public class Registration    {        public void Create(decimal amount, Student student, IEnumerable<Course> courses, decimal credits)        {            // do work        }    }

 

重构后代码
public class RegistrationContext    {        public decimal Amount { get; set; }        public Student Student { get; set; }        public IEnumerable<Course> Courses { get; set; }        public decimal Credits { get; set; }    }    public class Registration    {        public void Create(RegistrationContext registrationContext)        {            // do work        }    }

 

 

重构指南 - 引入参数对象(Introduce Parameter Object)