DesignPatterns > Flyweight

Flyweight


目的

多数の細かいオブジェクトを効率よくサポートするために
(典型的にはメモリの無駄を抑えるために)、オブジェクトを共有する。

構造


注釈

  • flyweightが機能するために必要な状態は、intrinsic状態かextrinsic状態のどちらかに分類される。intrinsic状態は文脈によらない共通値であり、ConcreteFlyweightオブジェクト内に格納される。一方、extrinsic状態は文脈依存の値であり、Clientオブジェクトに格納されるか、計算で与えられる。例えばテキストエディタを構成するCharacterオブジェクトの場合、intrinsic状態は文字コードであり、extrisic状態は表示位置(座標)である。


最終更新:2012年02月07日 12:09
添付ファイル