Files
design-patterns-cpp/singleton/README.md
2016-09-08 10:15:25 +02:00

16 lines
737 B
Markdown

## Singleton
Ensure a class only has one instance, and provide a global point of access to it.
Pattern has creational purpose and deals with object relationships, which are more
dynamic. The Singleton is often used as a part another design patterns (see [Façade]
and [Flyweight]).
### When to use
* there must be exactly one instance of a class, and it must be accessible to clients from a well-known access point
* when the sole instance should be extensible by subclassing, and clients should be able to use an extended instance without modifying their code
[Façade]: https://github.com/JakubVojvoda/design-patterns-cpp/tree/master/facade
[Flyweight]: https://github.com/JakubVojvoda/design-patterns-cpp/tree/master/flyweight