Miguel Matas Blog

Ingeniería y Arquitectura de Software, Proyectos IT, Programación, Personas, Problemas, Mejora Continua, la vida.

Singletonitis

“Dí­cese del abuso del Patrón de Diseño Singleton en una aplicación”.

Catalogado como Antipatrón de diseño en Wikipedia.org

Lo que no veo explicado por ningíºn lado cuándo se puede considerar que se está abusando…

Saludos.

Miguel.

2 comments

2 Comments so far

  1. Gabriel July 26th, 2008 8:20 pm

    Hola Miguel,

    El principal problema con el uso de este patrón es el mismo que con el uso de variables globales en aplicaciones procedurales. Al mantener un estado global, el singleton se convierte en un foco de posibles errores, principalmente en entornos multi-hilo. La mayorí­a de los singleton de una aplicación deberí­an estar implementados de forma que no mantengan ningíºn estado.

    El otro problema es la dificultad para testear aplicaciones que implementan el singleton en su forma clásica, siendo la propia clase quien gestiona su íºnica instancia. Sin embargo este problema se resuelve fácilmente moviendo la responsabilidad de gestionar la instancia del singleton a otra clase.

    Un saludo.

  2. Miguel July 26th, 2008 10:31 pm

    Muchas gracias por la aportación Gabriel. Tomo nota del simil que has hecho con las variables globales en aplicaciones procedurales, me parece muy acertado.

    Un saludo.

    Miguel.

Leave a reply

Please copy the string dvWCTI to the field below: