Diferencia entre revisiones de «Plantilla:TecnologiaDesarrloWeb/ArquitecturaWeb»
De WikiEducator
(→Los componentes de una aplicación web) |
(→Componentes principales de una aplicación web) |
||
| Línea 47: | Línea 47: | ||
# '''Lenguajes de programación''' → usados para construir tanto la parte visible (frontend) como la lógica (backend). | # '''Lenguajes de programación''' → usados para construir tanto la parte visible (frontend) como la lógica (backend). | ||
| − | {{ | + | ===Diferencia entre el cliente (frontend) y el servidor (backend)=== |
| + | ; El Frontend (lado del cliente) | ||
| + | *Es la parte visible de la aplicación, con la que el usuario interactúa desde su navegador. | ||
| + | *Incluye la estructura (HTML), los estilos (CSS) y la interactividad (JavaScript). | ||
| + | *Ejemplo: el formulario de registro o el botón de “Enviar”. | ||
| + | |||
| + | ;Backend (lado del servidor) | ||
| + | *Es la parte que no se ve. Se ejecuta en el servidor y se encarga de procesar las peticiones del cliente, acceder a la base de datos y devolver los resultados. | ||
| + | Ejemplo: el código que guarda los datos del formulario en la base de datos. | ||
| + | }} | ||
| + | |||
| + | {{MRM_Puntos clave| | ||
| + | El frontend muestra y recoge información del usuario, | ||
| + | mientras que el backend la procesa, almacena y devuelve resultados. | ||
| + | }} | ||
| + | |||
| + | {| class="wikitable" style="width:100%; text-align:center" | ||
| + | ! Aspecto !! Frontend (cliente) !! Backend (servidor) | ||
| + | |- | ||
| + | | Dónde se ejecuta || En el navegador del usuario || En el servidor web | ||
| + | |- | ||
| + | | Lenguajes habituales || HTML, CSS, JavaScript, Vue, React || PHP, Python, Node.js, Java | ||
| + | |- | ||
| + | | Función principal || Mostrar la interfaz y captar datos del usuario || Procesar datos y comunicarse con la base de datos | ||
| + | |- | ||
| + | | Ejemplo práctico || Formulario de contacto en pantalla || Código que guarda el mensaje en una base de datos | ||
| + | |- | ||
| + | | Resultado visible || Sí, el usuario lo ve directamente || No, solo devuelve una respuesta | ||
| + | |} | ||
| + | |||
| + | {{MRM_Ejemplo| title=Una metáfora: el restaurante web | ||
| + | ;Imagina que una aplicación web funciona como un restaurante: | ||
| + | |||
| + | * El **cliente (frontend)** es la '''mesa del comensal''', con todo lo que el usuario ve e interactúa: | ||
| + | la carta, los cubiertos, el plato servido, el salero o las vinagreras. | ||
| + | Es el lugar donde el usuario decide qué quiere hacer y cómo quiere ajustar su experiencia (por ejemplo, echar más sal o vinagre). | ||
| + | |||
| + | * El **servidor (backend)** es la '''cocina del restaurante'''. | ||
| + | Allí los cocineros preparan los platos según los pedidos recibidos, mezclan los ingredientes (los datos), y devuelven el resultado terminado al cliente. | ||
| + | |||
| + | '''El proceso completo:''' | ||
| + | El comensal (usuario) hace un pedido → el camarero (navegador) lo lleva a la cocina (servidor) → | ||
| + | los cocineros (código backend) preparan el plato → lo devuelven a la mesa → | ||
| + | y el cliente puede añadir más sal o vinagre (interacciones frontend). | ||
| + | }} | ||
| + | |||
| + | {{MRM_Ejemplo|title=Siguiendo con la metáfora| | ||
| + | *'''''Frontend''''' → la experiencia visible e interactiva (presentación). | ||
| + | |||
| + | “El plato, la mesa, los utensilios, el salero y lo que el usuario toca.” | ||
| + | |||
| + | *'''''Backend''''' → el trabajo oculto que genera el contenido (lógica y datos). | ||
| + | |||
| + | “La cocina donde se preparan los platos según el pedido.” | ||
| + | |||
| + | *'''''Base de datos''''' → la despensa donde se guardan los ingredientes. | ||
| + | |||
| + | “Lugar donde se almacenan los productos (datos) para cocinar los platos.” | ||
| + | |||
| + | *'''''HTTP / navegador''''' → el camarero que lleva y trae la información entre ambos mundos. | ||
| + | |||
| + | “Transporta los pedidos (peticiones) y devuelve las respuestas.” | ||
| + | }} | ||
===Arquitectura de la aplicación=== | ===Arquitectura de la aplicación=== | ||
Revisión de 11:39 7 oct 2025