C#设计模式笔记-Bridge Pattern 桥接(结构型模式)
抽象不应该依赖于实现细节,实现细节应该依赖于抽象
动机(Motivation):
一些业务具有多个变化的角度。
意图(Intent):
将抽象部分于实现部分分离,使他们都独立地变化。
结构(Structure)
Bridge模式的几个要点:
(1)Bridge模式使用“对象间的组合关系”解耦了抽象于和实现之间固有的绑定关系,使抽象和实现可以沿着各自的维度来变化
(2)所谓抽象和实现沿着各自的维度的变化,即“子类化”他们。得到各个子类之后,便可以任意组合他们
(3)Bridge模式有时候类似于多继承方案,但是多继承方案往往违反单一职责原则(即一个类只有一个变化的原因),复用性比较差。Bridge模式是比多继承方案更好的解决方法。
(4)Bridege模式的应用一般在“两个非常强的变化维度”,即使有两个变化的维度,但是在某个方向的变化维度并不剧烈-换言之两个变化不会导致纵横交错的结果,并不一定要使用Bridge模式。
作者:酷客多小程序
出处: http://www.cnblogs.com/ywqu
如果你认为此文章有用,请点击底端的【推荐】让其他人也了解此文章,
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
标签:
Bridge Pattern
, 桥接模式
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述