如果你想要写一个游戏,并且想让这个游戏同时支持PC和手机,那么怎么样的设计可以避免写两套代码,并且不影响可扩展性呢?说起来还是比较简单的,只要把对平台的依赖部分抽取成抽象的接口(比如说绘图部分),并且针对抽取出来的接口,分别实现PC版和手机版就行了。系统的其他部分只要调用那套抽取出来的接口就可以完成所有的功能。这样来看,系统的其他部分是不依赖具体的平台的,也就具有了良好的扩展性。这个就是Bridge模式的应用。
定义
将抽象和实现相分离,使二者可以独立的变化。(GOF)
结构图
图一:Bridge模式的一个结构图
例子
任何设计模式都是应用于不同的需求的,这里我们构造了一个有关汽车的需求来应用Bridge模式。(不过,由于个人对车了解不多,所以有可能例子不是很恰当,不要纠结于这一点哦)
★需求
1. 概括的讲,我们的需求就是实现各种各样的汽车。从细节上讲,我们知道,汽车
以用途分类
版权声明:本文为superbeck原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。