Codespaces como entorno de desarrollo

Esta es la práctica 0-B, común a los módulos que utilizan entornos de desarrollo en repositorios. Después de Git y GitHub, ejecutarás y modificarás código en un entorno reproducible. Es formativa y no añade otra entrega evaluable. En AD comenzamos con ad-ejemplos.

Abrir tu entorno

  1. Abre tu fork del repositorio de ejemplos, no el maestro del docente.

  2. Usa Code → Codespaces → Create codespace on main. Espera a que termine la preparación y consulta el registro si alguna instalación falla.

  3. El servicio ya ha clonado el repositorio en /workspaces/. Abre el terminal integrado y comprueba dónde estás y a qué remoto apunta:

    pwd
    git remote -v
    git status
    git --version
    java --version
    mvn --version
    python3 --version
    

También existe el acceso Abrir los ejemplos en Codespaces. Ese enlace apunta al maestro: para guardar experimentos en GitHub elige tu fork y crea el entorno desde él. Los enlaces con TU_USUARIO son provisionales.

Qué prepara el devcontainer

.devcontainer/devcontainer.json declara el entorno. En AD prepara Java 21, Maven, Python 3.12, GitHub CLI y extensiones del editor. Maven descarga las bibliotecas del proyecto y ejecuta compilación y pruebas: se proporciona ya configurado para centrarnos en el acceso a datos.

  • La imagen es la base del contenedor.

  • Las features añaden herramientas y versiones.

  • Las customizations preparan el editor.

  • postCreateCommand ejecuta las comprobaciones iniciales al crear el entorno.

  • pom.xml declara las bibliotecas y construcción Java; no configura Codespaces.

Actividad

Abre esos dos archivos y localiza dónde se decide la versión de Java, dónde se añade Python y dónde se declara la biblioteca JSON. ¿Qué cambiarías si otro módulo usara PHP en lugar de Java?

Ejecutar y modificar

Desde la raíz de ad-ejemplos:

mvn -q test
mvn -q compile exec:java -Dexec.mainClass=ejemplos.Rutas
python3 ud01-ficheros/python/rutas.py
  1. Contrasta las salidas con la guía de ejemplos. La ruta absoluta depende del directorio de trabajo del entorno.

  2. Añade otro ciclo a uno de los ejemplos, predice el árbol y vuelve a ejecutar.

  3. Comprueba el diff y registra el cambio en una rama de experimentación.

  4. Haz push a tu fork, y comprueba que aparece en GitHub.

En el repositorio de la práctica FCT hay dos verificaciones diferentes: mvn test comprueba la base inicial; mvn -Pcontrato clean verify comprueba el trabajo implementado. La referencia se verifica por separado. No necesitas resolver FCT para terminar esta preparación.

Cerrar, reabrir y reconstruir

  1. Guarda los archivos, haz commit/push cuando corresponda y detén el Codespace desde el menú del entorno o la página de Codespaces.

  2. Reábrelo y comprueba el historial. Guardar, commit y push son operaciones distintas; detener el entorno no sube cambios a GitHub.

  3. Ejecuta Codespaces: Rebuild Container desde la paleta de comandos. Repite una prueba y comprueba que las herramientas siguen disponibles.

  4. Antes de borrar un Codespace, asegúrate de haber subido el trabajo que quieres conservar: un commit solo local también se puede perder al borrarlo.

Consulta el consumo incluido en tu cuenta y detén el entorno al acabar. Se puede utilizar la misma configuración con Dev Containers en local; estas actividades no exigen contratar capacidad adicional.

Comprobación final

Actividad

Demuestra una ejecución Java y una Python, una modificación con resultado previsto y un cambio visible en tu fork. Explica qué conserva GitHub, qué proporciona Codespaces y cómo repetirías la ejecución en otro equipo.

Recursos de consulta