OOP 一切皆對象,,,對象交互---功能,,,功能疊加---模塊,,,模塊疊加----系統緩存
AOP 面向切面, 業務邏輯外,添加公共邏輯,增長日誌功能,權限控制功能,緩存處理,異常處理,事務,性能監控 額外邏輯性能
一、裝飾器 給依賴倒置實體包一層,上下加邏輯this
public interface IUser { void regUser(); }; public class User : IUser { public void regUser() { Console.WriteLine("註冊用戶"); } }
//裝飾一下,包一層 public class UserDecorator : IUser { public IUser _user { get; set; } public UserDecorator(IUser user) { this._user = user; } public void regUser() { Console.WriteLine("註冊前"); _user.regUser(); Console.WriteLine("註冊後"); } }
----------------
IUser user = new User();
UserDecorator ud = new UserDecorator(user);
ud.regUser();spa
二、代理模式:代理
public class ProxyUser : IUser { private IUser _user = new User(); public void regUser() { Console.WriteLine("註冊前"); _user.regUser(); Console.WriteLine("註冊後"); } }