• 享元模式


    1、享元模式:运用共享技术有效地支持大量细粒度的对象。
    2、优点:(1)、享元模式可以避免大量非常相似类的开销。在程序设计中,有时需要生成大量细粒度的实例来表示数据。如果能发现这些实例处理几个参数外都是相同的,有时能够大幅度减少需要实例化的类的数量。如果能把那些参数移动到类实例的外面,在方法调用时将它们传递进来,就可以通过共享大幅度减少单个实例的数目。(2)、由于代码共享,如果以后修改也会相对方便。
    3、应用:(1)、如果一个应用使用了大量的对象,而打俩个的这些对象造成了很大的存储开销时就应该考虑使用;(2)、对象的大多数状态可以外部状态,如果删除对象的外部状态,那么可以用相对较少的共享对象取代很多组对象,此时可以考虑使用享元模式。
    4、组成
    (1) 、抽象享元角色:为具体享元角色规定了必须实现的方法,而外蕴状态就是以参数的形式通过此方法传入。
    (2) 、具体享元角色:实现抽象角色规定的方法。如果存在内蕴状态,就负责为内蕴状态提供存储空间。
    (3) 、享元工厂角色:负责创建和管理享元角色。要想达到共享的目的,这个角色的实现是关键!
    (4) 、客户端角色:维护对所有享元对象的引用,而且还需要存储对应的外蕴状态。
  • 相关阅读:
    数据的艺术
    第十七篇 make的路径搜索综合实践
    第十六篇 make中的路径搜索
    第十五篇 make中的隐式规则概述
    第十四篇 自动生成依赖关系(终结)
    [SDOI2009]HH的项链解题报告
    欧几里德与扩展欧几里德算法的理解、实现与应用
    浅析强连通分量(Tarjan和kosaraju)
    deque-at
    plt.imshow()
  • 原文地址:https://www.cnblogs.com/zxtp/p/4960507.html
Copyright © 2020-2023  润新知