taiage/bloque3/tema7.md

4.8 KiB

Bloque 3. Tema 7.

Aplicaciones web

1. Concepto de aplicación web

Una aplicación web es un software accesible mediante un navegador, que se ejecuta en Internet o en una intranet.

Características

  • No requiere instalación en el equipo del usuario.
  • Acceso mediante navegador web.
  • Actualización centralizada en el servidor.
  • Compatible con múltiples sistemas operativos.
  • Arquitectura cliente/servidor.

2. Desarrollo web front-end

El desarrollo front-end es la parte de la aplicación que se ejecuta en el navegador del usuario.

Tecnologías principales

  • HTML: estructura del contenido.
  • CSS: presentación y diseño.
  • JavaScript: comportamiento e interactividad.

Funciones del front-end

  • Mostrar información al usuario.
  • Gestionar la interacción.
  • Validación básica de formularios.
  • Adaptación a distintos dispositivos.

3. Desarrollo web en servidor (back-end)

El back-end es la parte que se ejecuta en el servidor.

Funciones principales

  • Procesamiento de peticiones.
  • Gestión de bases de datos.
  • Lógica de negocio.
  • Generación de respuestas (HTML, JSON, XML).

Lenguajes habituales

  • Java (Jakarta EE)
  • C# (.NET)
  • PHP
  • Python
  • JavaScript (Node.js)

4. Lenguajes de marcado

4.1 HTML

HTML (HyperText Markup Language) es el lenguaje estándar para crear páginas web.

Características

  • Define la estructura del contenido.
  • Utiliza etiquetas.
  • Es interpretado por el navegador.

Ejemplo

Título

Párrafo de ejemplo


4.2 XML

XML (eXtensible Markup Language) es un lenguaje de marcado para almacenar e intercambiar datos.

Características

  • Estructura jerárquica.
  • No define presentación.
  • Es extensible.

Ejemplo

Tatiana 54

4.3 Derivaciones de XML/HTML

  • XHTML: versión estricta de HTML basada en XML.
  • SVG: gráficos vectoriales.
  • MathML: representación de fórmulas matemáticas.

5. Navegadores web

Un navegador web es una aplicación que permite acceder e interpretar contenidos web.

Funciones principales

  • Interpretar HTML, CSS y JavaScript.
  • Ejecutar scripts del lado del cliente.
  • Gestionar solicitudes HTTP/HTTPS.

Componentes

  • Motor de renderizado.
  • Motor JavaScript.

6. Lenguajes de programación web

6.1 Lenguajes del lado del cliente

Se ejecutan en el navegador:

  • JavaScript
  • TypeScript

6.2 Lenguajes del lado del servidor

Se ejecutan en el servidor:

  • Java
  • C#
  • PHP
  • Python
  • JavaScript (Node.js)

7. Lenguajes de script

Los lenguajes de script son lenguajes interpretados utilizados para automatizar tareas y dar dinamismo a las aplicaciones web.

Características

  • Interpretados.
  • Dinámicos.
  • Integración directa con la web.

Ejemplos

  • JavaScript
  • PHP
  • Python
  • Bash

8. Validación de datos en aplicaciones web

8.1 ¿Qué son las validaciones?

Las validaciones de datos son comprobaciones que aseguran que los datos introducidos por el usuario son correctos.

Objetivos

  • Evitar errores.
  • Mejorar calidad de datos.
  • Reducir errores antes del servidor.
  • Mejorar experiencia de usuario.

8.2 Tipos de validación

Validación en cliente (front-end)

Se realiza en el navegador.

Características:

  • Rápida.
  • Mejora experiencia de usuario.
  • No es segura por sí sola.

Ejemplos:

  • Campos obligatorios.
  • Formato de email.
  • Longitud de contraseña.

Validación en servidor (back-end)

Se realiza en el servidor.

Características:

  • Obligatoria.
  • Más segura.
  • Última barrera de control.

Ejemplos:

  • Validación de usuarios.
  • Comprobación en base de datos.
  • Reglas de negocio.

8.3 Validación de emails

Un email válido debe tener:

  • Texto antes de @
  • Símbolo @
  • Dominio después del @

Ejemplos:


8.4 Implementación de validaciones

HTML5

  • Comprueba formato básico.
  • Campo obligatorio.

JavaScript

function validarEmail(email) { return email.includes("@"); }

Expresión regular: const regex = /^[^\s@]+@[^\s@]+.[^\s@]+$/;


Servidor

El servidor siempre valida los datos por seguridad.


8.5 Reglas típicas de validación

  • Campos obligatorios
  • Formato de email
  • Longitud mínima y máxima
  • Solo números
  • Contraseñas seguras
  • Confirmación de contraseña

8.6 Idea clave de examen

La validación en cliente mejora la usabilidad, pero la validación en servidor es obligatoria por seguridad.


9. Resumen final

  • Arquitectura cliente/servidor.
  • Front-end = navegador.
  • Back-end = servidor.
  • HTML estructura.
  • XML datos.
  • Navegador interpreta contenido.
  • JavaScript principal lenguaje de scripting.
  • Validaciones en cliente y servidor.