Code smell: God-class

Hola a tod@s,

Os preguntaréis,¿Qué es un code smell o qué es una God-class?

Pues en esta entrada del blog de Autana, os explicare qué es cada uno de éstos términos.

Code smell: Cómo habréis podido suponer, un code smell se refiere a código que "apesta", esto viene a significar un código que aunque técnicamente no esta mal, y, por lo tanto no contiene bugs, sí contiene código que falla en el diseño y por lo tanto genera problemas de refactorización, de entendimiento del código, de reutilización, de rendimiento, etc.

En concreto os voy a hablar del Code smell más conocido (probablemente), la God-class. La God-class es una una clase que contiene TODA o casi toda la funcionalidad del programa y está apoyado por otras clases que solo aportan datos seguramente mientras aprendíais a programar habréis creado una clase que hacía todo. Ésto en si mismo no está mal, hay ocasiones en las que la centralización y un ligero aumento en el rendimiento es preferible sobre los problemas que genera este code smell.

Los problemas:

     -  Limita las posibilidades de modificar el código, por ejemplo para añadir alguna funcionalidad, sin afectar al resto del programa.

     -  Normalmente es muy poco eficiente, díficil de testear y debuggear y de reutilizar cualquier parte del código.

      - Y además utilizará demasiados recursos para cualquier operación, por muy pequeña que sea,que se quiera realizar.


La solución de algo tan complejo como puede llegar a convertirse este code smell normalmente conlleva una refactorización.



Un saludo y ya sabéis, ¡tened cuidado al diseñar vuestro programa no vayais a crear una God-class!

">
Introducción a FrontScript, un lenguaje propio par...
Comparadores estrictos en Javascript

Related Posts

Comments

 
No comments yet
Already Registered? Login Here
Guest
Martes, 23 Octubre 2018
If you'd like to register, please fill in the username and name fields.
Open

Si quieres unirte a nosotros o si tienes alguna pregunta sobre el mundo del CRM, haz clic aquí.