Flyweight

Flyweight je vzor návrhu, který se používá k optimalizaci paměťového využití tím, že sdílí co nejvíce podobných objektů. V situacích, kdy je potřeba vytvořit velké množství objektů, které mají stejnou strukturu, ale liší se v některých aspektech, flyweight vzor umožňuje oddělit jejich sdílené a unikátní informace. Sdílené informace jsou umístěny v „flyweight“ objektech, zatímco unikátní informace jsou uloženy v externích objektech, které spravují specifické hodnoty pro každou instanci. Tento přístup snižuje nároky na paměť a zvyšuje výkon, zejména v aplikacích, které potřebují manipulovat s velkým počtem entit, jako jsou herní aplikace nebo grafické systémy. Flyweight vzor je efektivní metodou, jak optimalizovat aplikace, které pracují s velkým množstvím dat a pomáhá minimalizovat nadbytečné objekty v paměti.