The singleton pattern is one of the most used (and misused) creational patterns. It is seen throughout the Cocoa libraries, UIKit, AppKit, and many other Apple frameworks. Be aware that its use can lead to a central state point that gets mutated across your whole program, which can lead to nasty bugs.
In this section, we'll go back to basics with the singleton and focus on its use cases.