[0006]iOS设计模式iOS-设计模式iOS Developer

iOS设计模式之桥接模式

2017-05-22  本文已影响30人  3697d6c42285

桥接模式

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()
    }
}
上一篇 下一篇

猜你喜欢

热点阅读