美文网首页
GoF - 结构型模式

GoF - 结构型模式

作者: _Walker__ | 来源:发表于2021-11-21 14:40 被阅读0次

    桥接模式(Bridge)

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

    Bridge将业务功能,与实现业务功能需要的底层接口拆分为两个独立的类层次结构,通过对象组合最终完成整个系统。

    典型的情景是做一些跨平台的功能,N个功能、M种平台,一般的做法需要实现N*M个类。桥接模式的做法,只需要N+M个类(不算两个层次的基类)通过两两组合,可以产生N*M的效果。

    平台\功能 Window Text Image
    Windows ... ... ...
    MacOS ... ... ...
    Linux ... ... ...
    • 桥接,在这里是指功能抽象类与底层抽象类间的关系

    享元模式(Flyweight)

    运用共享技术,有效的支持大量细粒度的对象。

    Flyweight要达成的目的是,在保持面向对象编程灵活性的同时,减少大量小对象带来的内存占用。

    当同时满足下列条件时,Flyweight是有效的:

    • 应用程序中使用了大量的对象
    • 由于使用了大量对象,造成很大的存储开销
    • 对象的大部分状态可以变为外部状态
    • 删除对象的外部状态后,可以用较少的共享对象取代很多组对象

    由于在Flyweight中采用的是共享对象,Client不应该直接创建对象,所有对象应该处于某个管理下(如类图中的Factory)。

    相关文章

      网友评论

          本文标题:GoF - 结构型模式

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