今天看到一篇應用接口的文章,主要是如何利用.net內置的功能,來重構代碼,覺得有點意思,摘錄其中的代碼下來,以備將來參考。但是我與這篇文章的作者有同樣的疑問,這樣重構代碼真的可以嗎?是如何實現松耦合的呢?不知道有沒有高手,可以指點一下?謝謝!
首先是舊代碼,如下:
public class ClassRegistration
{
public void Create()
{
// create registration code
}
public void Transfer()
{
// class transfer code
}
public decimal Total { get; private set; }
}
public class RegistrationProcessor
{
public decimal ProcessRegistration(ClassRegistration registration)
{
registration.Create();
return registration.Total;
}
}public interface IClassRegistration
{
void Create();
decimal Total { get; }
}
public class ClassRegistration : IClassRegistration
{
public void Create()
{
// create registration code
}
public void Transfer()
{
// class transfer code
}
public decimal Total { get; private set; }
}
public class RegistrationProcessor
{
public decimal ProcessRegistration(IClassRegistration registration)
{
registration.Create();
return registration.Total;
}
}