El último de los patrones de creación y uno de los patrones más sencillos de entender y quizás el más utilizado. Hasta ahora hemos visto, los siguientes patrones de creación:

Y ahora Singleton, el cual es el encargado de crear una sola instancia de una clase, proporcionando un único punto de creación y bloqueando la generación de instancias nuevas.

ESCENARIO

Para explicar este patrón, vamos a pensar en un servidor de aplicaciones, el cual puede tener varias aplicaciones, pero cada vez que le hacemos una petición, único punto de acceso, nos devuelve la misma instancia en todas las peticiones a una url en concreto

CUANDO USARLO

  • cuando sólo necesitemos una única instancia de una clase y deba ser instanciable a las demás clases por un punto de acceso conocido

ESTRUCTURA

ACTORES

  • Singleton: es el responsable de crear y devolver un única instancia, cada vez que se intenta instancia o obtener una instancia

VENTAJAS E INCONVENIENTES

Sólo tenemos una instancia por clase, eso reduce el número de clases gestionadas y por consiguiente un acceso controlado a la instancia

Hay que tener en cuenta, que la implementación es la más sencilla de todas. Si queremos que tenga en cuenta multithreading, sea concurrente y otras eventualidades, deberemos hacer modificaciones, para que sean soportadas

IMPLEMENTACIÓN

Entradas relacionadas

Deja una respuesta