Java 21 Spring Boot Spring Shell Maven

Guess Gaming (Number Guessing Game)

Un simple juego de adivinar el número implementado con Spring Boot y Spring Shell donde pones a prueba tu suerte y lógica.

Juego CLI Spring Boot Java
Mockup del proyecto Guess Gaming (Number Guessing Game)

Reto

Implementar un juego clásico de "adivinar el número" como una aplicación de consola (CLI) interactiva, utilizando el ecosistema de Spring y las características modernas de Java.

Solución Técnica

Se desarrolló la aplicación utilizando Spring Boot 3 y Java 21. La interactividad de la consola se gestionó completamente a través de Spring Shell, que permite definir comandos personalizados como `start <dificultad>`, `guess <número>` y `hint`.

Características Destacadas

Lógica de juego centralizada en un `GameService`. Múltiples niveles de dificultad (easy, medium, hard) que ajustan el número de intentos. Sistema de estado (`GameState`) para rastrear el progreso del juego. Generador de pistas (`HintGenerator`) que ofrece ayudas variadas (mayor/menor, rango, par/impar).

Impacto

El resultado es una aplicación de CLI robusta, fácil de ejecutar y entretenida. Sirve como un excelente proyecto para demostrar el uso de Spring Shell para crear aplicaciones de consola interactivas y la gestión de estado en una aplicación Spring Boot.

Vista ampliada