Guía Semanal 8: Despliegue en la Nube con Streamlit Community Cloud

Asignatura: Programación de Computadores / Fundamentos de Programación Temática Principal: Despliegue de Aplicaciones Web e Integración Continua (CI/CD)

1. El Propósito de esta Semana

El objetivo culminante de este primer bloque es publicar la aplicación en Internet para que sea accesible mediante un enlace URL público. Este proceso, conocido como despliegue (deployment), convierte el proyecto en una herramienta real y tangible que los estudiantes pueden compartir y agregar a su portafolio profesional.

2. Fase 1: El Eslabón Perdido (requirements.txt)

Para que los servidores en la nube puedan ejecutar el código, necesitan saber qué herramientas externas se utilizaron. * En VSCode, los estudiantes deben crear un archivo nuevo llamado exactamente requirements.txt en la misma carpeta donde se encuentra su proyecto. * Dentro del archivo, deben listar las librerías necesarias, escribiendo streamlit y math en líneas separadas.

3. Fase 2: Actualización del Repositorio en GitHub

Al agregar un archivo nuevo, es imperativo sincronizar el repositorio local con la nube aplicando la secuencia de control de versiones aprendida: 1. git add . para preparar los cambios en el directorio. 2. git commit -m "Agregado archivo de requerimientos" para registrar la modificación de forma definitiva. 3. git push para enviar la actualización a GitHub.

4. Fase 3: Despliegue en Streamlit Community Cloud

Utilizando el servicio gratuito de Streamlit, se conectará el código fuente con un servidor en vivo: 1. Ingresar a share.streamlit.io y seleccionar la opción “Continue with GitHub” para iniciar sesión. 2. Conceder los permisos de lectura de repositorios y hacer clic en el botón “New app”. 3. Llenar el formulario de configuración seleccionando el repositorio del proyecto, la rama main (o master), y especificando app.py como el archivo principal. 4. Hacer clic en “Deploy!” y esperar a que el servidor instale los requerimientos y lance la aplicación, generando una URL pública.

5. Fase 4: La Magia de la Integración Continua (CI/CD)

Una vez que GitHub y Streamlit Cloud están vinculados, cualquier modificación que el estudiante realice en VSCode (como cambiar el título o ajustar las fórmulas termo-físicas o de caudales) se actualizará automáticamente en la página web tras ejecutar un nuevo git push.

6. Actividades de Aprendizaje Guiado con IA

Para interiorizar estos conceptos, los estudiantes deben utilizar su asistente de IA con la siguiente instrucción de análisis: > “Actúa como un Ingeniero de Software Senior. Acabo de desplegar mi primera aplicación de ingeniería usando GitHub y Streamlit Community Cloud. 1) Explícame con palabras sencillas qué es el ‘Despliegue’ (Deployment) de software. 2) ¿Por qué es estrictamente necesario el archivo requirements.txt cuando subimos código a la nube? 3) Explícame qué es la ‘Integración Continua / Despliegue Continuo (CI/CD)’ y cómo se relaciona con el hecho de que mi app se actualice sola al hacer un ‘git push’. 4) Menciona 2 ventajas de que un ingeniero tenga sus herramientas publicadas en la web en lugar de solo en su computadora. Después hazme 3 preguntas para verificar mi comprensión sobre el despliegue en la nube.”

7. Resumen Cognitivo (Para escritura a mano)

El esquema final para afianzar el conocimiento debe desarrollarse en una sola hoja bajo estos parámetros: * Frente de la hoja: Redactar la definición del despliegue en la nube, explicar el rol técnico del archivo requirements.txt y argumentar la ventaja de mantener conectado el repositorio de GitHub con el servidor de Streamlit. Se debe incluir una frase de reflexión celebrando la publicación de la primera aplicación del curso. * Reverso de la hoja: Escribir en letras grandes la URL pública generada por Streamlit Cloud. Adicionalmente, documentar a mano la secuencia exacta de tres comandos en terminal (add, commit, push) necesarios para actualizar la aplicación de manera iterativa.