PDF de programación - Capa de presentación

Imágen de pdf Capa de presentación

Capa de presentacióngráfica de visualizaciones

Publicado el 28 de Junio del 2018
637 visualizaciones desde el 28 de Junio del 2018
258,2 KB
8 paginas
Creado hace 18a (21/11/2005)
Capa de
Presentación

Capa de Presentación
Responsabilidades

¡ Navegabilidad del sistema
¡ Formateo de los datos de salida
¡ Internacionalización
¡ Validación de los datos de

entrada

¡ Interfaz gráfica de usuario
¡ Multicanalidad del sistema

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

1

Patrón MVC
(Model View Controller)

¡ Patrón arquitectónico aportado por

SmallTalk

¡ Modelo 2 de aplicaciones WEB
¡ Reparte las responsabilidades de la

aplicación entre tres elementos:
l El Modelo: Core de la aplicación. Reglas

de negocio y capa de persistencia
l La Vista: Renderizado del sistema
l El Controlador: Control del flujo de

navegación de la aplicación.

Patrón MVC
Historia

¡ Inventado por Trygve Reenskaug
¡ Introducido en el entorno de

desarrollo del SmallTalk 80
desarrollador en XEROX PARC.

¡ Los elementos del MVC aparecen el
varios modelos de GUIs modernos
l MFCs
l Swing
l JSF
l Etc

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

2

Arquitectura
MVC

Output

Vista

Input

Controlador

Modelo

MVC
El modelo

¡ Encapsula los datos y reglas específicos de la

aplicación (Capa de negocio + Capa
persistencia).

¡ Aporta:

l Métodos para el manejo de datos y servicios
l Métodos para acceder al estado del sistema.

¡ Mantiene registro de las diferentes vistas y

cotroladores para notificar los cambios
(Modelo de eventos).

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

3

MVC
La Vista

¡

l

l

¡ Mecanismo necesario para mapear los

datos provenientes del modelo al
renderizado de la interfaz.
Cuando el Modelo cambia, la vista es
informada.

La vista solicita al modelo la información
Se responsabiliza de actualizar la pantalla
¡ Detectar áreas defectuosas (quedan

descubiertas cuando estuvieron ocultas por otra
ventana, por ejemplo).
Redibujar la pantalla cuando se solicite.

¡

MVC
El controlador

¡

Intercepta los eventos de entrada
provenientes del usuario del sistema

¡ Traduce los eventos en invocaciones al

modelo de la aplicación

¡ Activa o desactiva los elementos de la

interfaz de usuario (en el ámbito de
las aplicaciones Windows, pone los
botones habilitados o en gris)

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

4

Persistencia de Entidades
en Sesión

¡ El único medio para almacenar el estado de

la sesión del usuario en el servidor junto a la
base de datos.

¡ Nos sirve de caché
¡ Muy delicado. No se debe sobrecargar, dado

que existe una sesión por cada usuario
activo.

¡ Origen potencial de problemas:

l La interfaz de la sesión es muy débilmente tipada,

puesto que almacenamos instancias de Object

l Solución: Centralizar la gestión de la sesión en un

solo punto…

Persistencia de entidades
en Sesión – Gestor de Sesión y Contexto

¡ Centralizamos TODA la lógica de manejo del objeto

sesión y del contexto en un solo objeto

¡ Hacemos que el objeto presente una interfaz rígida

para evitar los errores de programación …
l En tiempo de compilación, desarrollando un método

para cada objeto susceptible de ser cacheado

¡ Más robusto
¡ Más tedioso de desarrollar
¡ Difícil y costoso de mantener

l En tiempo de ejecución, comprobándolo en tiempo real
y contrastándolo con la configuración externalizada en
XML

¡ Sólo se detectan los errores en tiempo de ejecución,

pero se detectan a la primera

¡ Componente reutilizable
¡ Fácil de mantener

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

5

Persistencia de entidades
en Sesión – Gestor de Sesión y Contexto

¡ En la sesión almacenamos y cacheamos

los datos propios del usuario. Ej.:
l UsuarioBean con las propiedades del usuario
l Lista de privilegios de acceso consultados a

base de datos.

l Etc.

¡ En el contexto podemos almacenar datos

comunes a distintos usuarios. Ej.:
l La lista de países que carga el combo box de la

pantalla de alta

l La lista de idiomas
l Etc.

Persistencia de entidades
en Sesión – Consideraciones
¡ La sesión es delicada. Hay que tener en

cuenta que hay una por usuario activo, y
que en una aplicación web podemos tener de
repente 500 usuarios simultáneos. Ojo con
el tamaño de la sesión!

¡ La sesión permanece activa durante un

tiempo determinado por lo que la presencia
de usuarios sobrecarga el sistema incluso si
no es simultánea.

¡ El contexto es menos delicado, puesto lo que

metemos en el contexto se mete una sola
vez para todos.

¡ Hay que controlar la caducidad de la

información en el contexto

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

6

Centralización de la lógica de
recuperación de Información

¡ Lógica de recuperación descentralizada:

Cada vez que necesitamos algo de negocio
invocamos a la capa directamente

¡ Problemas: Si cambia el origen del dato

tendremos que “tocar” todos los métodos
que invocan el método.

¡ Ej.: Cierto resultado de un método pasa a

ser cacheado en sesión o aplicación:
l el cierre mensual de facturación

¡ proceso muy pesado
¡ no cambia el resultado en todo el mes ->

cacheado en contexto con caducidad de 30 días.

Centralización de la lógica de
recuperación de Información

Servlet o
Action

Servlet o
Action

Servlet o
Action

Servlet o
Action

Servlet o
Action

Object Manager

Helper a Negocio

Gestión de
Sesión y
Contexto

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

7

Referencias

¡ URLs

l

l

l

¡

http://jakarta.apache.org/Struts
http://theserverside.com

Libros

Programming Jakarta Struts de
O’Reilly

l Mastering Tomcat Development de

WILEY
Java Server Programming J2EE
Edition de Wrox

l

PDF Creator - PDF4Free v2.0 http://www.pdf4free.com

8
  • Links de descarga
http://lwp-l.com/pdf12215

Comentarios de: Capa de presentación (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad