Patrón y táctica perez, giraldo

Page 1

Javier Eduardo Pérez ARQUITECTURA DE Carreño SOFTWARE Johan Sebastian Giraldo Hurtado

TACTICA Y PATRON

Proxy ¿Qué es?, ¿Para qué sirve? El patrón Prox y es un patrón estructural que tiene como propósit o proporciona r un sustituto o representante de otro objeto para controlar el acceso a éste, para así retrasar el tiempo de creación e inicialización hasta que realmente sea necesario. (Ej. Vista previa de imágenes)

¿Qué tipo?, ¿Cuándo se usa? El patrón proxy es utilizado en diferentes fases: - Cada vez que hay necesidad de una referencia a un objeto mas pesado o sofisticado. - Proxy remoto, proporciona un representante local de un objeto situado en otro espacio de direcciones. - Proxy virtual, crea objetos costosos por encargo y solo cuando es necesario. - Proxy de protección, control el acceso al objeto original, por ejemplo con diferentes permisos de accesos. b.

- Proxy de referencia inteligente, es un sustituto de un simple puntero que realiza alguna acción adicional: Contar el número de referencias al objeto original. Cargar un objeto persistente en memoria

cuando es referenciado por vez primera. Bloquea el acceso al objeto real para que no sea modificado por otro objeto.

¿Cómo funciona? Proxy •

Mantiene una referencia que permite al proxy acceder al objeto real.

Proporciona una interfaz igual que la del sujeto real.

Controla el acceso al sujeto real, y puede ser responsable de crearlo y borrarlo.

Otras responsabilidades, dependen del tipo de proxy: Proxy Remoto, Proxy virtual, Proxy de protección.

Subject Define una interfaz común para el RealSubject y el Proxy, de tal manera que el Proxy se pueda usar en

Ingeniería de Software II Ingeniería de Sistemas y Computación


Javier Eduardo Pérez ARQUITECTURA DE Carreño SOFTWARE Johan Sebastian Giraldo Hurtado

TACTICA Y PATRON vez del RealSubject.

RealSubject Define el objeto real que el proxy representa.

Ejemplo Un usuario desea obtener un recurso por medio de un proxy para que el sistema tenga mayor rendimiento.

Broker ¿Qué es?, ¿Para qué sirve? El patrón Broker puede ser usado para estructurar sistemas de software distribuidos con componentes desacoplados que interactúan mediante invocaciones a servicios remotos. Un componente Broker es el responsable de la coordinación de la comunicación, como el envío de peticiones y la transmisión de respuestas y excepciones.

¿Cuándo se usa? - Cuando se necesita intercambiar, quitar o añadir componentes en tiempo de ejecución. - Se usan en Aplicaciones distribuidas, servicios de información.

- Los componentes deben ser capaces de acceder a los servicios proveídos por otros, -a Latravés arquitectura debe esconderdelosservicios detalles de invocaciones remotos transparentes específicos de implementación en una ubicación. del sistema de los usuarios de componentes y servicios - Independiente del lenguaje - Independiente de las PC (Sockets, memoria compartida, etc.) - Escalable

Beneficios: - Localización transparente - Variabilidad y extensibilidad de componentes - Portabilidad del Broker - Interoperabilidad entre diferentes sistemas Broker - Reusabilidad - Testing y debugging (aplicación cliente fácil de probar así misma)

Desventajas: -

Eficiencia restringida, baja performance Mayor esfuerzo de desarrollo Baja tolerancia de fallos Administración de errores dificultosa

Estructura

+transfiere mensajes

ProxyCliente

proxies del lado del servidor. +transfiere mensajes

Broker

ProxyServer

+request

+ll ama +request

Cliente

+usa API

+usa API

Servidor

Bridge

Ingeniería de Software II Ingeniería de Sistemas y Computación


Javier Eduardo Pérez ARQUITECTURA DE Carreño SOFTWARE Johan Sebastian Giraldo Hurtado

TACTICA Y PATRON consisten Servidor

de operaciones y atributos. Hay dos tipos de servidores: 1) los servidores que ofrecen servicios comunes a muchos dominios de aplicación, y 2) los servidores que implementan una funcionalidad específica para un dominio de aplicación particular.

Cliente Los clientes son aplicaciones que acceden a los servicios de al menos un servidor. Para invocar servicios remotos, los clientes envían solicitudes al bróker, después que la operación se ha ejecutado, los clientes

reciben respuestas o excepciones del bróker, la interacción entre clientes y servidores se basa en un modelo dinámico, lo cual significa que los servidores también pueden actuar como clientes. Los

clientes no necesitan conocer la ubicación de los servidores que accedan; esto es importante porque permite la agregación de nuevos servicios, y el movimiento de los servicios existentes a otras ubicaciones, aún mientras el sistema este ejecutándose.

Broker Un broker es un mensajero, responsable de la transmisión de solicitudes de clientes a servidores, así como de la transmisión de respuestas y excepciones de servidores a clientes. Localiza al receptor de una solicitud basándose en un sistema de identificadores únicos. Ofrece API’s a clientes y servidores que incluyen operaciones para el registro de servidores, y la invocación de métodos de un servidores.

Los proxies del lado del cliente representan una capa adicional entre los clientes y el broker, para proveer transparencia en el sentido que un objeto remoto aparece como local ante el cliente, es decir esconden los detalles de implementación tales como: 1) El mecanismo de comunicación entre procesos utilizado para transferir un mensaje entre clientes y brokers. 2) La creación y eliminación de bloques de memoria. 3) El cálculo referencias parámetros resultados.

de de y

Proxies de lado del servidor

Proxies del lado del cliente

Los proxies del lado del servidor generalmente son similares a los proxies del lado del cliente, la diferencia es que son

Ingeniería de Software II Ingeniería de Sistemas y Computación


Javier Eduardo Pérez ARQUITECTURA DE Carreño SOFTWARE Johan Sebastian Giraldo Hurtado

TACTICA Y PATRON responsables de recibir solicitudes, desempaquetar los mensajes de entrada, el cálculo de referencias de los parámetros, llamar al servicio apropiado, y el cálulo de resultados y excepciones antes de enviarlos al cliente.

Ejemplo World Wide Web utiliza el patrón bróker par que los navegadores actúen como intermediarios y los servidores de WWW como proveedores de servicios.

Puentes Los puentes son componentes opcionales utilizados para esconder los detalles de implementación cuando dos brokers interaccionan.

Supóngase que un sistema Broker se ejecuta en una red heterogénea. Si se transmiten solicitudes sobre la red, se deben comunicar brokers diferentes independientemente de las redes y de los sistemas operativos utilizados.

Ingeniería de Software II Ingeniería de Sistemas y Computación


Javier Eduardo Pérez ARQUITECTURA DE Carreño SOFTWARE Johan Sebastian Giraldo Hurtado

TACTICA Y PATRON

Bibliografía Arquitectura de Proyectos en IT, Estilos arquitectónicos. Recuperado el 13 de Julio de 2014 http://apit.wdfiles.com/ local-files/start/Architectural Styles%202011.pdf GUERRA SÁNCHEZ Esther, Patrones de Diseño [diapositivas], Universidad Carlos III. 2008 (Guerra Sanchez, 2008) Grupo 4, Patrones de diseño [diapositivas]. UAM 2008 Recuperado el 13 de Julio de 2014 http://astreo.ii.uam.es/ ~jlara/TACCII/8_Patro nes.pdf MENDOZA CHAPA, Sonia Guadalupe, seminario de sistema distribuidos 1996. Recuperado el 13 de Julio de 2014 http://www.mcc.unam. mx/~cursos/Algoritmo

s/javaDC992/broker.html MONTERO S., ZARRAONADÍA T., DÍAZ P., AEDO I., Educación. Instituto de Tecnologías Educativas (ITE) Ministerio de Educación, gobierno de España. Recuperado el 13 de Julio de 2014 de http://ares.cnice.mec.e s/informes/21/contenid os/creditos.htm PAVÓN MESTRAS Juan, Patrones de diseño orientado a objetos [diapositivas]. Universidad Complutense Madrid, Programación Orientada a Objetos Facultad de Informática ROJAS RODRIGUEZ Michael, Patrones arquitectónicos para programación distribuida, Instituto Politécnico Nacional. Mexico D.F, 2010

Ingeniería de Software II Ingeniería de Sistemas y Computación


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.