In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design.
"The Singleton pattern ensures that a class has only one instance and provides a global point of access to it."