Ignacio Acisclo, Consultor Tecnológico en Autentia ofrece una charla sobre el patrón Singleton en los workshops de Patrones de Diseños que damos en nuestra oficina después de cada daily.
2. ¿Que es?
- Patrón para garantizar la obtención de una única instancia
de una clase.
!
-Existe el estricto y el compartido.
!
-Da un punto de acceso global a la misma.
!
-La clase es la responsable de su propia inicialización.
!
!
4. ¿Cuando usarlo?
Cuando necesitamos acceso a un recurso único o
limitado.
!
Ejemplos;
- Una clase para manejar conexiones de red.
- Una clase para escribir logs.
- Una clase que provee de configuraciones
necesarias a lo largo de todo el ciclo de una app.
5. PROS
- Es la manera más segura de controlar que solo se cree
una instancia.
- Sencilla implementación.
CONTRAS
- Posible perdida de rendimiento a causa de la
sincronización.
- Vulnera el principio de responsabilidad única.
- Es una mentira.
- Oculta dependencias, difícil de testear.