Un simulador interactivo que demuestra diferentes métodos para manejar operaciones asíncronas en JavaScript mediante la preparación de pedidos en una cafetería virtual.
- Simulación realista de tiempos de preparación
- Tres métodos distintos para manejar asincronía:
- Encadenamiento con
.then()y.catch() - Sintaxis
async/awaitcontry/catch - Ejecución paralela con
Promise.allSettled()
- Encadenamiento con
- Probabilidad configurable de fallos (20% por defecto)
- Interfaz intuitiva con consola de eventos en tiempo real
- Resumen detallado del pedido
- Diseño responsive que funciona en móviles y desktop
- Navegador web moderno (Chrome, Firefox, Edge o Safari de versiones recientes)
- Editor de código (opcional para modificaciones)
- Descargar el repositorio como archivo ZIP o clonarlo usando Git
- Extraer los archivos en una carpeta local
- Abrir el archivo
index.htmlen tu navegador preferido
Para desarrolladores:
- No se requieren dependencias adicionales
- El proyecto usa Bootstrap y Font Awesome a través de CDN
- Iniciar simulación:
- Seleccionar uno de los tres métodos disponibles:
- Secuencial (.then): Muestra el encadenamiento tradicional de promesas
- Secuencial (async/await): Demuestra la sintaxis moderna
- Paralelo: Ejecuta todas las tareas simultáneamente
- Ver resultados:
- La consola muestra el progreso en tiempo real
- Los mensajes indican éxitos y fallos durante la preparación
- Los tiempos de ejecución se muestran para cada item
- Analizar resultados:
- El resumen final muestra el estado de cada producto
- Se indican claramente los fallos y sus causas
- Los tiempos totales son visibles para comparación
- Reiniciar:
- Usar el botón "Limpiar" para comenzar una nueva simulación
index.html: Contiene la estructura principal de la aplicaciónstyles.css: Todos los estilos visualesapp.js: La lógica principal de la aplicación
- HTML5 (estructura semántica)
- CSS3 (diseño responsive y animaciones)
- JavaScript ES6+ (promesas, async/await)
- Bootstrap 5 (diseño y componentes UI)
- Font Awesome (iconos profesionales)
Para modificar la aplicación:
- Cambiar tiempos de preparación: Editar los valores en las funciones de
app.js - Ajustar probabilidad de fallo: Modificar el 0.2 en las funciones de preparación
- Añadir nuevos items: Crear nuevas funciones similares a las existentes
Magdalena Inalaf G.
Desarrolladora Full Stack especializada en JavaScript y tecnologías web modernas.
- Sitio web: https://inalaf.ca
- GitHub: MagdaIG
- LinkedIn: minalaf
- Email: contacto@inalaf.ca
Este proyecto fue desarrollado como demostración educativa de:
- Manejo de operaciones asíncronas en JavaScript
- Patrones modernos de programación con promesas
- Diseño de interfaces intuitivas
Este proyecto está licenciado bajo la licencia MIT - ver el archivo LICENSE para más detalles.
Desarrollado con ❤️ usando ES6, Promesas y Bootstrap
© 2023 Todos los derechos reservados
