Skip to content

TareaCodeSmell #6

Description

@melpgala

Asunto: Tarea4 - Code Smell Nota: Es parte de un deber, siéntete libre de ignorar.

CodeSmell: Large class
Repositorio: juego-2d-java
Justificación de Problema: La clase Dijkstra contiene varios métodos que ejercen diferentes funcionalidades. La acumulación de métodos podría llegar a complicar el entendimiento de la clase. Es posible también que se complique la reutilización de código en otras partes del programa lo que podría llevar a la necesidad de mantenimiento al código.
Las responsabilidades de los diferentes métodos van desde el constructor, la obtención del nodo, evaluación del mapa del juego, encontrar nodos vecinos.

Técnica de refactorización: Extract Class
Solución:
Pasamos de tener una sola clase con muchas funciones a subdividirlas en clases más pequeñas y específicas.
Nota: Esto es un ejemplo de como organizarlo.
image

image

image

image

image

Beneficios de Refactorizar: Dividir la clase en otras más pequeñas facilitara la comprensión del código de manera que se facilitara la reutilización de código dentro del programa. Facilita el mantenimiento del programa al contar con clases más simplificadas y especificas sin que los cambios afecten a otras partes del código.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions