🇸 🇹 🇺 🇵 🇮 🇩 - Code Smells
🇸 Singleton
El patrón Singleton 🚫 limita una clase a una única instancia. Aunque puede ser útil en ciertos contextos, es considerado un Code Smell porque dificulta las pruebas y puede crear un acoplamiento no deseado entre componentes. Es un problema porque:
Vive en el contexto global, lo que puede causar conflictos y dificultades para rastrear su uso.
Su modificación puede afectar inesperadamente a otras partes del código.
🇹 Tight Coupling (Alto acoplamiento)
El alto acoplamiento 🚫 hace que las clases o componentes dependan fuertemente entre sí, complicando las modificaciones y las pruebas. Favorecer la composición sobre la herencia y utilizar interfaces puede ayudar a reducir el acoplamiento.
🇺 Untestability (Código no testeable)
El código debe diseñarse de tal manera que sea fácil de probar 🚫. La dificultad para realizar pruebas unitarias indica que el diseño del código podría mejorarse para hacerlo más modular y menos dependiente de contextos específicos.
🇵 Premature Optimization (Optimización prematura)
Optimizar el código antes de necesitarlo 🚫 puede conducir a complejidad innecesaria y a dificultades de mantenimiento. Es mejor escribir primero un código claro y fácil de entender, y luego optimizarlo solo si es necesario según el perfil de rendimiento.
🇮 Indiscreptive Naming (Nombres no descriptivos)
Usar nombres que no describen claramente el propósito o la función de una variable, clase o método 🚫 hace que el código sea más difícil de entender y mantener. Los nombres deben ser claros y descriptivos.
🇩 Duplication (Duplicidad de código)
La duplicación de código 🚫 aumenta la deuda técnica, ya que el mismo cambio debe aplicarse en múltiples lugares. Aplicar el principio DRY (Don't Repeat Yourself) ayuda a mantener el código más limpio y fácil de mantener.
Última actualización