IOS设计模式学习(21)享元

1 前言

在面向对象软件设计中,利用公共对象不仅能节省资源还能提高性能。共享的对象只能提供某些内在的信息,而不能用来识别对象。专门用于设计可共享对象的一种设计模式叫做享元模式(Flyweight pattern)。

2 详述

2.1 简述

实现享元模式需要两个关键组件,通常是可共享的享元对象和保存他们的池。某种中央对象维护这个池,并从它返回适当的实例。

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

2.2 何时使用

(1)应用程序使用很多对象;

(2)在内存中保存对象会影响内存性能;

(3)对象的多数特有状态(外在状态)可以放到外部而轻量化;

(3)移除了外在状态后,可以用较少的共享对象替代原来的那组对象;

(4)应用程序不依赖于对象标示,因为共享对象不能提供唯一的标示。

3 结语

以上是所有内容,希望对大家有所帮助。

你可能感兴趣的:(设计模式)