FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

DesignPatternsPHP/Structural/Flyweight at master · JavaDevl/DesignPatternsPHP · GitHub

Latest commit

 

History

History
 
 

README.rst

Purpose

To minimise memory usage, a Flyweight shares as much as possible memory with similar objects. It is needed when a large amount of objects is used that don't differ much in state. A common practice is to hold state in external data structures and pass them to the flyweight object when needed.

UML Diagram

Code

You can also find these code on GitHub

FlyweightInterface.php

.. literalinclude:: FlyweightInterface.php
   :language: php
   :linenos:

CharacterFlyweight.php

.. literalinclude:: CharacterFlyweight.php
   :language: php
   :linenos:

FlyweightFactory.php

.. literalinclude:: FlyweightFactory.php
   :language: php
   :linenos:

Test

Tests/FlyweightTest.php

.. literalinclude:: Tests/FlyweightTest.php
   :language: php
   :linenos:


Back | FazBrowse Home | New Git URL