[GoF设计模式]Bridge模式和Template模式的C++实现

【Bridge模式】

使用组合的方式将功能的需求的抽象和实现解耦,这样一来抽象和实现可以分别独自的变化。由此解决需求变更可能带来的麻烦,即类的迅速膨胀,如一般的情况下抽象和实现可能需要M*N个类来解决问题,而使用Bridge模式则只需要M+N个类来解决问题。此处的“实现”是指“怎么实现用户的需求”,并且通过组合的方式来实现。此处的实现不是指继承基类,实现基类接口,而是通过组合实现用户的需求。Bridge模式是设计模式中复杂求难理解的模式之一。

【图解】

以中国人吃饭用筷子,美国人吃饭用叉子,当然中国人也可以用叉子吃饭,美国人也可以用筷子吃饭 为例,当然这种情况下用和不用都是定义4个类来实现的,但是当增加到三种情况下时候,运用Bridge模式只定义3+3=6个类,而不用则需要3*3需要9个类。如在加上印度人吃饭用手。简单起见,只列两个。

1

【程序】

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值