《JavaScript设计模式与开发实践》之享元模式

概念: 用于性能优化的模式,通俗讲就是用时间换取空间的优化模式。核心是运用共享技术来有效的支持大量细粒度的对象。

目标:尽量减少对共享对象的数量。

享元模式的实现,主要基于内部状态与外部状态。
内部状态: 1. 内部状态存储于对象的内部; 2. 内部状态可以被一下对象共享; 3. 内部状态独立于具体的场景,通常不会改变。
外部状态: 外部状态取决于具体的场景,并根据场景而变化,外部状态不能被共享。

享元模式可以使用的场景:

  1. 程序中使用了大量的相似对象;
  2. 由于使用了大量对象,造成了很大的内存开销;
  3. 对象的大多数状态都可以变为外部状态;
  4. 剥离出对象的外部状态之后,可以用相对较少的共享对象取代大量对象。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容