3.01.Identificación del problema

Singleton vulnera el principio de responsabilidad única, puesto que la idea es que una clase tenga una única instancia siendo el punto de acceso para otros. Es así que, los problemas que aborda este patrón son:

Problema 1: Controlar que exista una sola instancia para una clase

El principal problema que se desea controlar es el de garantizar que una clase tenga una única instancia.

Ejemplo: supongamos que tenemos un recurso compartido como puede ser una base de datos o archivo a la cual queremos acceder. Su acceso se realizará a través de una sola instancia, la instancia que ya fue creada, y no a través de varias conexiones (instancias).

A través de un constructor normal este tipo de funcionamiento no puede responder a esta particularidad, puesto que siempre se devuelve un objeto diferente.

Problema 2: Proporcionar un punto de acceso global a dicha instancia

Todos hemos usado las variables globales, estas variables son accedidas através de cualquier parte del código pudiendo el valor ser cambiado. 

Específicamente, para el patrón Singleton si bien la idea es generar una instancia única que sea accedida desde cualquier parte del código. También, el objetivo radica en solucionar el problema de la variable global, que es la modificación de su valor. Es decir, esta instancia no debe ser modificada. 

Obra publicada con Licencia Creative Commons Reconocimiento No comercial Sin obra derivada 4.0

Creado con eXeLearning (Ventana nueva)