明净

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

OOP 一切皆对象,,,对象交互---功能,,,功能叠加---模块,,,模块叠加----系统

 

AOP   面向切面, 业务逻辑外,添加公共逻辑,增加日志功能,权限控制功能,缓存处理,异常处理,事务,性能监控   额外逻辑

 

1、装饰器        给依赖倒置实体包一层,上下加逻辑

    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();

 

 2、代理模式:

    public class ProxyUser : IUser
    {
        private IUser _user = new User();
        public void regUser()
        {
            Console.WriteLine("注册前");
            _user.regUser();
            Console.WriteLine("注册后");
        }
    }

 

posted on 2018-10-25 15:52  明净  阅读(280)  评论(0编辑  收藏  举报