iOS设计模式之桥接模式

作者: 3697d6c42285 | 来源:发表于2017-05-22 22:55 被阅读30次

桥接模式

1、什么是桥接模式

将抽象部分与实现部分分离,使它们都可以独立的变化。

桥接模式一共有两个角色:

  • 抽象角色
  • 实现角色

抽象角色负责通知实现角色做什么事情,实现角色负责实现抽象角色通知的事情。
就相当于你的大脑给你的身体下达指令,大脑负责吩咐身体做什么事情,身体负责执行大脑所吩咐的动作。

2、桥接模式用在什么地方

  • 不希望在抽象和实现之间形成一种固定的关系,以便切换
  • 抽象和实现都可以通过子类进行独立的扩展
  • 对实现的修改不会影响到客户端和抽象
  • 在不同的抽象接口中共享一个实现

3、桥接模式的使用

  1. 首先定义实现类,实现类包括可以执行的动作的枚举,执行动作的方法和设置现在的动作。
  2. 定义抽象类,抽象类实现设置命令并执行。

4、总结

桥接模式说起来使用不算复杂,但是平时的使用中,用的比较少,或者说完全运用桥接模式的比较少,或多或少还是会用到他的思想。
优点很突出,最大的优点就是抽象和实现完全分离,相互不影响,拥有独立的扩展能力。

5、demo


class Body: NSObject {
    enum action {
        case walk
        case run
        case lie
        case sit
    }
    var currentAction: action?
    
    func execuate() {
        switch self.currentAction! {
        case .walk: break
        case .run: break
        case .lie: break
        case .sit: break
        }
    }
    
    func loaddBridgeCommand(act:action) {
        self.currentAction = act
    }
}

class Brain: NSObject {
    
    var body = {Body()}()
    func walk() {
        self.setCommand(act: .walk)
    }
    func run() {
        self.setCommand(act: .run)
    }
    func lie() {
        self.setCommand(act: .lie)
    }
    func sit() {
        self.setCommand(act: .sit)
    }
    func setCommand(act:Body.action) {
        self.body.loaddBridgeCommand(act: act)
        self.body.execuate()
    }
}

相关文章

  • 设计模式之桥接模式

    设计模式之桥接模式 1. 模式定义 桥接模式又称柄体模式或接口模式,它是一种结构性模式。桥接模式将抽象部分与实现部...

  • iOS设计模式之桥接模式

    桥接模式 1、什么是桥接模式 将抽象部分与实现部分分离,使它们都可以独立的变化。 桥接模式一共有两个角色: 抽象角...

  • Java设计模式——桥接模式

    Java设计模式之桥接模式 回顾 上一期分享了适配器模式,主要为了实现解耦 桥接模式 简介 桥接模式是对象的结构模...

  • iOS设计模式之美-适配器模式

    iOS设计模式之美-工厂模式iOS设计模式之美-抽象工厂模式iOS设计模式之美-生成器模式iOS设计模式之美-适配...

  • iOS设计模式之美-抽象工厂模式

    iOS设计模式之美-工厂模式iOS设计模式之美-抽象工厂模式iOS设计模式之美-生成器模式iOS设计模式之美-适配...

  • iOS设计模式之美-工厂模式

    iOS设计模式之美-工厂模式iOS设计模式之美-抽象工厂模式iOS设计模式之美-生成器模式iOS设计模式之美-适配...

  • iOS设计模式之美-生成器模式

    iOS设计模式之美-工厂模式iOS设计模式之美-抽象工厂模式iOS设计模式之美-生成器模式iOS设计模式之美-适配...

  • 设计模式-桥接模式

    设计模式-桥接模式 定义 桥接模式(Bridge Pattern)也称为桥梁模式、接口(Interface)模式或...

  • iOS设计模式-桥接模式

    问题: 假如:我们需要大中小3种型号的画笔,能够绘制12种不同的颜色,如果使用蜡笔,需要准备3x12=36支,但如...

  • 桥接模式

    设计模式:桥接模式(Bridge)

网友评论

    本文标题:iOS设计模式之桥接模式

    本文链接:https://www.haomeiwen.com/subject/arpixxtx.html