Frontend y backend
La parte de una app que ves y tocás, y la parte que trabaja detrás.
Casi toda app está partida en dos. El frontend es lo que corre en tu dispositivo: las pantallas, los botones y los formularios de un sitio o de una app móvil. El backend corre en un servidor en otro lado: revisa tu contraseña, lee y escribe la base de datos, cobra la tarjeta y manda los datos que el frontend muestra. Los dos se hablan a través de una API, casi siempre por HTTPS.
Los frontends se hacen con HTML, CSS y JavaScript en el navegador (muchas veces con un framework como React), o con Swift y Kotlin en los celulares. Los backends se escriben en Python, Java, Go, Node.js y muchos más, y corren en una máquina en la nube, en un contenedor o como una función serverless. Cuando tocás "comprar", el frontend manda un pedido; el backend lo valida, actualiza stock y pedidos, y responde "listo"; el frontend muestra la confirmación.
La división importa porque cada lado tiene problemas distintos. El frontend se preocupa por tamaños de pantalla, velocidad en celulares viejos y accesibilidad; el backend por seguridad, integridad de los datos y atender miles de usuarios a la vez. Todo lo que tiene que ser confiable (precios, permisos) vive en el backend, porque cualquier cosa en el frontend la puede leer y modificar el usuario. Un desarrollador "full-stack" trabaja en los dos.
Para quedarse
- Frontend: corre en el dispositivo del usuario, hecho con HTML, CSS, JavaScript o código nativo de celular.
- Backend: corre en servidores, es dueño de los datos y de las reglas del negocio.
- Se comunican por APIs, y el backend nunca confía ciegamente en el frontend.
- "Full stack" quiere decir trabajar en los dos lados.