从结构和写法上来讲,两种设计模式非常相似,怎么理解他们的区别呢?
装饰者模式,基本上没有争议,就是为了给装饰者的方法增强,单纯的是为了在装饰者方法上增加其他功能。
动态代理模式也可以在被代理的方法上增加功能,也就是在功能上都可以实现,但是代理设计模式有他的不同,被代理的对象难以直接获得或者是不想暴露给客户端,而装饰者模式是继承的一种替代方案,就是说代理设计模式可以理解为没有办法或者没有权限直接访问被代理对象,所以被代理对象的具体信息也是隐藏的。
qq:1992093891
从结构和写法上来讲,两种设计模式非常相似,怎么理解他们的区别呢?
装饰者模式,基本上没有争议,就是为了给装饰者的方法增强,单纯的是为了在装饰者方法上增加其他功能。
动态代理模式也可以在被代理的方法上增加功能,也就是在功能上都可以实现,但是代理设计模式有他的不同,被代理的对象难以直接获得或者是不想暴露给客户端,而装饰者模式是继承的一种替代方案,就是说代理设计模式可以理解为没有办法或者没有权限直接访问被代理对象,所以被代理对象的具体信息也是隐藏的。
qq:1992093891