Flyweight DP

  

Consider an application with large numbers of fine-grained objects.

Example. One object for each character.

For:
(1) Drawing and formatting routines could treat uniformly characters and embedded elements

(2) easy extensions to support new character sets

Against: Large number of objects


Solution








A shared object that can be used in multiple contexts simultaneously.