CodeSOD: Soltero o en Pareja Nota

CodeSOD: Soltero o en Pareja

El patrón de diseño singleton, aunque simple, se utiliza incorrectamente con frecuencia. Bartłomiej encontró numerosos singleton implementados incorrectamente en código heredado. Un ejemplo intenta crear un singleton dentro del constructor, fallando en garantizar una sola instancia. Se pueden crear múltiples instancias, reemplazando la anterior. El método DoSomething intenta identificar la instancia correcta, fallando silenciosamente en caso contrario. Esta implementación no logra ni siquiera la funcionalidad básica de un singleton. En esencia, funciona como una variable global defectuosa. El diseño del código es fundamentalmente defectuoso. El ejemplo presentado destaca los errores comunes en la implementación de singleton. La simplicidad del patrón de singleton a menudo conduce a implementaciones incorrectas.