Ruta Full Stack
0✦ 0
Glosario · El código · Fase 0

Backend

La parte que el usuario no ve: se ejecuta en el servidor, guarda la información y decide qué se puede hacer y quién puede hacerlo.

✦Apagada: responde bien la pregunta del final para encenderla

También lo verás como: back · back-end · servidor de aplicación

Analogía

La cocina y la oficina del restaurante: donde se prepara la comida, se lleva la caja y se guarda la despensa bajo llave.

De qué se encarga

  • Recibir peticiones y responderlas → API
  • Comprobar que los datos que llegan son válidos (nunca se fía del frontend)
  • Guardar y consultar en la base de datos
  • Verificar quién eres y qué puedes hacer (Fase 8)
  • Hablar con servicios de terceros: cobrar, enviar emails, facturar (Fase 9)

La pregunta del principiante

"Si el frontend ya hace cosas, ¿para qué el backend?" Porque el frontend está en el ordenador del usuario y cualquiera puede manipularlo. Si el precio se calcula en el navegador, alguien puede ponerlo a cero. La verdad y las reglas tienen que vivir en un sitio al que el usuario no llegue: el servidor.

Para qué sirve / cuándo aparece

Todo lo que un negocio realmente necesita (guardar clientes, citas, pedidos, facturas) es backend. Empieza en la Fase 6.

Un paso más: lo que pasa cuando pulsas "Reservar"

  1. El frontend envía una petición: "mesa para 4, el viernes a las 21:00".
  2. El backend comprueba: ¿los datos tienen sentido? ¿el restaurante abre ese día? ¿queda mesa?
  3. Guarda la reserva en la base de datos.
  4. Quizá avisa a alguien: un email al dueño, un mensaje al cliente.
  5. Responde: "reserva confirmada" o "no queda sitio".

El usuario solo ve el paso 5. Todo lo demás es backend. Y fíjate en el paso 2: aunque el frontend ya hubiera comprobado los datos, el backend vuelve a comprobarlos, porque es el único que nadie de fuera puede manipular.

Comprueba que lo entendiste

Una tienda calcula el precio final del carrito con JavaScript en el navegador y el servidor lo acepta sin más. ¿Cuál es el problema?

Ver también

frontend · base de datos · API · servidor