shlogg · Early preview
Prashant Mishra @prashantrmishra

Reducing Memory Usage With Flyweight Pattern

Reducing memory usage by sharing data between similar objects is key to efficient software development. The Flyweight pattern achieves this by separating intrinsic & extrinsic state, improving performance & memory efficiency.

One of the structural patterns aims to reduce memory usage by sharing as much data as possible with similar objects.
It is particularly useful when dealing with a large number of similar objects, where creating a new instance for each object would be expensive in terms of memory consumption.
key concepts:
Intrinsic state: The state that is shared between multiple objects is independent of the context and remains the same across different objects.
Extrinsic state: The state that is unique to each object and is passed from the client. This state can vary and is not stored in the Flyweight object...