標籤:重構 interface 應用 class
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">今天看到一篇應用介面的文章,主要是如何利用.net內建的功能,來重構代碼,覺得有點意思,摘錄其中的代碼下來,以備將來參考。但是我與這篇文章的作者有同樣的疑問,這樣重構代碼真的可以嗎?是如何?松耦合的呢?不知道有沒有高手,可以指點一下?謝謝!</span>
首先是舊代碼,如下:
<span style="font-size:18px;">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; } }</span>
重構以後的代碼如下:
<span style="font-size:18px;">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; } }</span>
我理解的重構(c#)