iOS设计模式浅析之桥接模式

  • IOS设计模式浅析之桥接模式(Bridge)
  • 摘要如下:
  • 定义:将抽象部分与它的实现部分分离,使它们都可以独立地变化。
    换一种容易理解的方式来说明一下:假设有一个系统,它可以使用多种方式来进行分类,并且每一种分类都有可能变化
    (比如说上面说的手机,既可以按照手机品牌来分类,也可以按照手机软件来分类,两者都是有可能变化的),那么就把这些分类方式分离出来让它们独立的变化,以减少它们之间的耦合

桥接模式优缺点

  1. 桥接模式的优点:
    1. 桥接模式使用聚合关系,解耦了抽象和实现之间固有的绑定关系,使得抽象和实现可以沿着各自的维度来变化。
    2. 提高了系统的可扩展性,可以独立地对抽象部分和实现部分进行扩展。
    3. 可减少子类的个数,这个在前面讲手机示例的时候进行分析了。

  2. 桥接模式的缺点:
    1. 桥接模式的引入会增加系统的理解与设计难度,由于聚合关系建立在抽象层,要求开发者针对抽象进行设计与编程。
    2. 桥接模式要求正确识别出系统中两个独立变化的维度,因此其使用范围具有一定的局限性。

  3. 通过优缺点的分析,我们可以在如下的情形下使用桥接模式:
    1. 不想在抽象与其实现之间形成固定的绑定关系;
    2. 抽象及其实现都应可以通过子类化独立进行扩展;
    3. 对抽象的实现进行修改不应影响客户端代码;
    4. 如果每个实现需要额外的子类以细化抽象,则说明有必要把它们分成两个部分;
    5. 想在带有不同抽象接口的多个对象之间共享一个实现。

  4. 总的来说,桥接模式的本质在于“分离抽象和实现”。

你可能感兴趣的:(iOS设计模式浅析之桥接模式)