Often times, when we need an object that serves for many other objects in the domain we use the Singleton pattern. It is easy but as discussed by many people, its 'globally visible' aspect often causes maintenance nightmare, as we can't easily know which other objects are manipulating the singleton.
Also, undeterministic deletion order of singleton instances is often times problematic.
Singleton pattern, however, has many good points, too:
* Of course, as the name suggests - guaranteed only one instance of the class.
* The service object is there for you when it is needed, without explicit object instantiation.
* The service object is accessible without manual interconnection effort, like passing around reference.
(The last point causes the maintenance problem as described earlier, at the same time.)
Inspired by Java's servlet container, FixtureContainer class solves the above mentioned problem, while preserving preferable aspects of the singleton.
Downloads:
0 This Week