重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇内容主要讲解“在什么情况下使用Bridge模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“在什么情况下使用Bridge模式”吧!
10年积累的成都网站制作、网站建设、外贸网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有海晏免费网站建设让你可以放心的选择与我们合作。
适用性
以下一些情况使用Bridge模式:
• 你不希望在抽象和它的实现部分之间有一个固定的绑定关系。例如这种情况可能是因为,在程序运行时刻实现部分应可以被选择或者切换。
一般来讲,抽象类定义接口,具象类负责实现,而且实现功能的代码都是直接写在对应的方法里,这就是所谓的绑定。桥接模式将实现部分独立成单独的类之后,可以简单地被替换。
• 类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充。这时Bridge
式使你可以对不同的抽象接口和实现部分进行组合,并分别对它们进行扩充。
可以多个接口类使用同一个实现类,也可以一个接口类切换使用多个实现类。
• 对一个抽象的实现部分的修改应对客户不产生影响,即客户的代码不必重新编译。
可以实现运行时替换实现类的实例,动态改变类的行为。
• (C++)你想对客户完全隐藏抽象的实现部分。在C++中,类的表示在类接口中是可见的。
很多时候,C++的头文件或多或少的会存在一些和实现相关的数据成员,使用桥接模式之后这部分内容都被移动到实现类的具象类中,结果上隐藏了实现的细节。
• 正如在意图一节的第一个类图中所示的那样,有许多类要生成。这样一种类层次结构说明你必须将一个对象分解成两个部分。 Rumbaugh称这种类层次结构为“嵌套的普化”(nested generalizations)。
上一篇文章中作者也提到,类的功能出现了排列组合,就说明需要将实现类从接口类中分离出来了。
• 你想在多个对象间共享实现(可能使用引用计数),但同时要求客户并不知道这一点。
一个简单的例子便是Coplien的String类[ Cop92 ],在这个类中多个对象可以共享同一个字符串表示(StringRep)。
共享的前提当然首先要将需要共享的部分独立出来。
到此,相信大家对“在什么情况下使用Bridge模式”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!