Skip to content

Refactorizar clase Board para cumplir el principio de Responsabilidad Única (SRP) #4

@Guroven

Description

@Guroven

La clase Board concentra múltiples responsabilidades dentro del juego. Actualmente maneja la lógica, el renderizado, la entrada por teclado, la detección de colisiones y la carga de imágenes. Esto genera un acoplamiento excesivo y hace difícil mantener o extender el código sin riesgo de romper otras partes del sistema.

Board controla tanto la lógica del juego como el dibujo y la interacción del usuario. Además, no hay separación entre lógica, presentación e interacción. Cambiar una función (por ejemplo, el renderizado) implica tocar código no relacionado.

Por consecuente se dificulta la mantenibilidad y comprensión del código, impide la reutilización de componentes y aumenta el riesgo de errores al modificar funciones.

Propuesta de solución:
Separar responsabilidades creando clases específicas:
GameController → lógica del juego
GameRenderer → dibujo de elementos
InputHandler → control de teclado

De esta forma, Board solo servirá como contenedor principal del juego.

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