13. Prácticas

Es hora de poner en práctica todo lo aprendido. Aquí tienes dos proyectos completos que integran todos los conceptos del curso: desde el diseño de la base de datos hasta la manipulación y análisis de datos.

En todos ellos debes:

  • Diseñar la estructura de la base de datos (colecciones y documentos).
  • Crear la base de datos utilizando MongoDB.
  • Insertar datos de ejemplo en las colecciones.
  • Realizar consultas y agregaciones para extraer información relevante.

Y sobre todo no tener miedo a experimentar.

Ejercicio 1: Gestión de tareas

Diseña e implementa una base de datos para gestionar tareas de un equipo de trabajo. El sistema debe controlar proyectos, tareas asignadas a usuarios, prioridades y estados.

  • ¿Cuál es el proyecto con más tareas completadas?
  • ¿Qué usuario tiene más tareas pendientes?
  • ¿Cuál es la tarea más antigua sin completar?

Ejercicio 2: Sistema de gestión de restaurante

Crea un sistema completo para gestionar un restaurante con mesas, menú, pedidos y camareros.

Estructura sugerida:

  • Mesas: número de mesa, capacidad, ubicación (interior/terraza), estado (libre/ocupada)
  • Menú: nombre del plato, categoría (entrante/principal/postre/bebida), precio, ingredientes, disponible
  • Camareros: nombre, turno (mañana/tarde/noche), pedidos atendidos total
  • Pedidos: mesa, camarero, platos (con cantidad), fecha y hora, estado (pendiente/preparando/servido/pagado), total

Operaciones a implementar:

  • Tomar un pedido (crear pedido, asignar camarero, marcar mesa como ocupada)
  • Marcar un pedido como servido
  • Cerrar un pedido y liberar la mesa (calcular total, actualizar estadísticas del camarero)
  • Buscar mesas disponibles con capacidad para N personas
  • Mostrar el menú por categorías
  • Añadir o quitar platos de la disponibilidad del día

Consultas y estadísticas:

  • ¿Cuál es el plato más pedido?
  • ¿Qué camarero ha atendido más pedidos?
  • ¿Cuál es el ticket medio del restaurante?
  • ¿Qué mesas generan más ingresos?
  • ¿Cuál es el turno con más ventas?
  • Total de ingresos por categoría de plato
  • Platos que nunca se han pedido

Crea índices apropiados para optimizar las consultas más frecuentes (buscar mesas disponibles, consultar pedidos activos, etc.)

This work is under a Attribution-NonCommercial-NoDerivatives 4.0 International license.

Desafíos de programación atemporales y multiparadigmáticos

Desafíos de programación atemporales y multiparadigmáticos

Te encuentras ante un librillo de actividades, divididas en 2 niveles de dificultad. Te enfrentarás a los casos más comunes que te puedes encontrar en pruebas técnicas o aprender conceptos elementales de programación.

Buy the book

Will you buy me a coffee?

Comments

There are no comments yet.

Visitors in real time

You are alone: 🐱