You are on page 1of 11

SPRING FRAMEWORK 4 - BACKEND NINJA

ESTRUCTURA GENERAL DE
UNA APLICACIN WEB
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

UN POCO DE HISTORIA
En las primeras aplicaciones cliente-servidor, cada programa cliente
deba instalarse en cada ordenador personal atendiendo a su sistema
operativo. Esto supona un alto coste en desarrollo y una baja
productividad.

Las aplicaciones web actuales de basan en la generacin de pginas


dinmicas en un formato estndar (como HTML), por lo que son vlidas
en cualquier dispositivo con un navegador instalado en el sistema.

Slo es necesario crear un cliente que funcione en cualquier


navegador, independientemente de su sistema operativo. La
aplicacin web se escribe una vez y se ejecuta igual en todas partes.
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

VENTAJAS DE UNA APLICACIN WEB

Ahorra tiempo en el desarrollo.

No hay problemas de compatibilidad.

No ocupa espacio en el disco duro.

Actualizaciones inmediatas.

Consumo bajo de recursos del sistema.

Multiplataforma.

Disponibilidad alta.
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

EL MODELO DE TRES CAPAS

Una aplicacin web se estructura en tres capas principales:

Navegador > Interaccin de usuario.

Servidor web > Lgica de la aplicacin.

Base de datos > Almacn los datos.

?????? ??????

NAVEGADOR BASE DE DATOS


SERVIDOR WEB
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

NAVEGADOR
Es la capa visual con la que el usuario o cliente interacta.

El navegador simplemente se encarga de representar texto en pantalla


mediante un lenguaje de marcas enriquecido, por ejemplo, con
Javascript. Interpreta cdigo y lo muestra como contenido.

Puede hacer uso de hiperenlaces o hipervnculos que enlazan una


porcin de texto o una imagen a otro documento.

El seguimiento de enlaces de una pgina a otra se denomina navegacin.

Tanto en este curso, como en los diferentes proyectos informticos donde


te ubiques en tu carrera profesional, al conjunto de pginas las
denominaremos vistas.
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

SERVIDOR WEB

El servidor web es un software que permite desarrollar


lgica compleja en la aplicacin. Esta lgica es llamada
negocio o lgica de negocio.

Realiza conexiones generalmente bidireccionales,


generando respuestas para la aplicacin cliente.

Para esta comunicacin se usa el protocolo HTTP.

En este curso aprenderemos a utilizar Spring Framework


para manejar toda la lgica de la aplicacin.
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

SERVIDOR WEB - PROTOCOLO HTTP


El protocolo HTTP es un conjunto de reglas que permiten una comunicacin efectiva
entre el cliente y el servidor.

A ste protocolo se le suele asignar los puertos 80 u 8080.

Todo comienza escribiendo una direccin web o URL en nuestro navegador preferido:
http://www.udemy.com/index.html

Esto produce un socket a un servidor DNS que se encargar de transformar la


direccin alfanumrica a numrica (una IP).

Una vez obtenida la direccin IP, abre un socket con sta mediante TCP.

Prepara la peticin para el servidor GET /index.html HTTP/1.1.

Comprueba si se encuentra en la cach.

Se presenta el recurso en pantalla (si es preciso).


ESTRUCTURA GENERAL DE UNA APLICACIN WEB

SERVIDOR WEB - PETICIONES HTTP


Las peticiones HTTP son las encargadas de usar este protocolo para comunicar a los clientes con el
servidor.

Cada peticin HTTP va acompaada de:

Una direccin o URL, que indica el recurso al que se quiere acceder.

Unos datos llamados parmetros, necesarios en ciertas ocasiones.

Unas cabeceras, tambin llamadas headers, que amplan informacin a la peticin (por
ejemplo: el navegador utilizado o User Agent, el lenguaje, etc).

Existen diferentes tipos de peticin, las ms comunes y recomendadas son:

GET: Utilizada para solicitar recursos.

http://www.servidor.com/buscarPersona?nombre=jorge&apellido=lopez

POST: Utilizada para crear, modificar y eliminar recursos.

http://www.servidor.com/altaPersona > los datos van ocultos.


ESTRUCTURA GENERAL DE UNA APLICACIN WEB

SERVIDOR WEB - RESPUESTAS HTTP


El servidor nos devolver una respuesta HTTP con el siguiente contenido:

La informacin solicitada, que puede ser el cdigo HTML o datos en otros formatos.

Los headers, para ampliar informacin.

El estado de la respuesta, que va asociada a cdigos de tres dgitos del 1XX al 5XX:

1XX: Respuestas informativas.

2XX: Peticiones incorrectas.

3XX: Redirecciones.

4XX: Errores del cliente.

5XX: Errores del servidor.


ESTRUCTURA GENERAL DE UNA APLICACIN WEB

BASE DE DATOS

Las bases de datos son sistemas que contienen informacin


clasificada de distinta manera, relacionados entre s
mediante un tipo de unin.

Es importante para el curso que tengas unos conocimientos


bsicos sobre el modelo entidad relacin, dado a que
trabajaremos con bases de datos relaciones como MySQL.

Para que nuestro backend Spring pueda acceder a los datos


utilizaremos Spring Data JPA e Hibernate, apoyndonos en
QueryDSL para facilitar consultas complejas.
ESTRUCTURA GENERAL DE UNA APLICACIN WEB

CHECK-IN DE CONOCIMIENTOS

Esto es lo aprendido hasta ahora:

URL + HEADERS + PARAMETROS

PETICIN HTTP
JPA + HIBERNATE

RESPUESTA HTTP

NAVEGADOR BASE DE DATOS


SERVIDOR WEB

DATOS + HEADERS + STATUS

Es el momento de practicar

You might also like