ConcreteFlyweight

E679873

ConcreteFlyweight is the specific implementation of the Flyweight pattern that stores intrinsic, shareable state and provides the actual behavior reused across multiple contexts.

All labels observed (2)

Label Occurrences
ConcreteFlyweight canonical 1
Flyweight pattern structure 1

How this entity was disambiguated

Statements (45)

Predicate Object
instanceOf DesignPatternComponent ⓘ
FlyweightImplementation ⓘ
appearsIn Design Patterns: Elements of Reusable Object-Oriented Software ⓘ
benefit reduces memory usage ⓘ
supports large numbers of fine-grained objects ⓘ
category structural pattern element ⓘ
collaboratesWith Client ⓘ
FlyweightFactory ⓘ
conformsTo Flyweight interface ⓘ
createdBy FlyweightFactory ⓘ
definedIn Flyweight pattern structure ⓘ
linked to: ConcreteFlyweight
designGoal enable object sharing ⓘ
optimize resource usage ⓘ
doesNotStore extrinsic state ⓘ
exampleUseCase character objects in text rendering ⓘ
game object sharing ⓘ
graphical glyph objects ⓘ
granularity fine-grained ⓘ
hasConstraint must be safe to share ⓘ
must not depend on extrinsic state ⓘ
hasProperty context independent ⓘ
fine-grained object ⓘ
immutable intrinsic state ⓘ
memory efficient ⓘ
reusable ⓘ
hasRole is shared across multiple contexts ⓘ
provides shared behavior ⓘ
stores intrinsic state ⓘ
implements Flyweight interface ⓘ
lifecycle managed by FlyweightFactory ⓘ
partOf Flyweight pattern ⓘ
linked to: Flyweight
patternOrigin Gang of Four design patterns ⓘ
patternType structural design pattern component ⓘ
relatedConcept Flyweight ⓘ
FlyweightFactory ⓘ
UnsharedConcreteFlyweight ⓘ
requires clear separation of intrinsic and extrinsic state ⓘ
responsibleFor accepting extrinsic state as parameters ⓘ
implementing flyweight operations ⓘ
using intrinsic state in operations ⓘ
stores intrinsic state ⓘ
typicalLanguage object-oriented languages ⓘ
usedBy Client ⓘ
usedIn structural design patterns ⓘ
visibility usually hidden behind factory ⓘ

How these facts were elicited

Referenced by (2)

Full triples — surface form annotated when it differs from this entity's canonical label.

Flyweight → typicalParticipants → ConcreteFlyweight ⓘ
ConcreteFlyweight → definedIn → Flyweight pattern structure ⓘ
linked to: ConcreteFlyweight