Hey, I have just reduced the price for all products. Let's prepare our programming skills for the post-COVID era. Check it out »
Flyweight

Flyweight in Swift

Flyweight is a structural design pattern that allows programs to support vast quantities of objects by keeping their memory consumption low.

The pattern achieves it by sharing parts of object state between multiple objects. In other words, the Flyweight saves RAM by caching the same data used by different objects.

Usage of the pattern in Swift

Complexity:

Popularity:

Usage examples: The Flyweight pattern has a single purpose: minimizing memory intake. If your program doesn’t struggle with a shortage of RAM, then you might just ignore this pattern for a while.

Identification: Flyweight can be recognized by a creation method that returns cached objects instead of creating new.

Flyweight in Other Languages

Design Patterns: Flyweight in Java Design Patterns: Flyweight in C# Design Patterns: Flyweight in C++ Design Patterns: Flyweight in PHP Design Patterns: Flyweight in Python Design Patterns: Flyweight in Ruby Design Patterns: Flyweight in TypeScript Design Patterns: Flyweight in Go