
课程咨询: 400-996-5531
投诉建议: 400-111-8989
认真做教育 专心促就业
设计模式的学习与应用是大多数Java程序员都需要熟练掌握的一个编程技术,而本文我们就简单来了解一下,Java编程代理模式与桥接模式的区别。
一、代理模式
原理
代理模式是指在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能。
代理控制着对于原对象的访问,并允许在将请求提交给对象前后进行一些处理。
一般情况下,我们让代理类和原始类实现同样的接口,因此你可将其传递给任何一个使用实际服务对象的客户端。
应用场景
代理模式常用在业务系统中开发一些非功能性需求,比如:监控、统计、鉴权、限流、事务、幂等、日志。我们将这些附加功能与业务功能解耦,放到代理类统一处理,让程序员只需要关注业务方面的开发。除此之外,代理模式还可以用在RPC、缓存等应用场景中。
二、桥接模式
定义
桥接模式可将一个大类或一系列紧密相关的类拆分为抽象和实现两个独立的层次结构,从而实现解耦和易扩展。
定义中的“抽象”,指的并非“抽象类”或“接口”,而是被抽象出来的一套“类库”,它只包含骨架代码,真正的业务逻辑需要委派给定义中的“实现”来完成。而定义中的“实现”,也并非“接口的实现类”,而是的一套独立的“类库”。“抽象”和“实现”独立开发,通过对象之间的组合关系,组装在一起。
使用场景
如果你想要拆分或重组一个具有多重功能的庞杂类(例如能与多个数据库服务器进行交互的类),可以使用桥接模式。
如果你希望在几个独立维度上扩展一个类,可使用该模式。
如果你需要在运行时切换不同实现方法可使用桥接模式。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。