SlideShare a Scribd company logo
1 of 9
Download to read offline
Patrones de Diseño
Patrón de diseño
PROXY
●
Alumnos
– Bongiovanni Ignacio
– Bentolila Fernando
– Dúcculi Lucas
Motivación
Pensemos en un editor de documentos que
puede insertar objetos gráficos. Cierto tipo de
imágenes (ej: bmp) pueden ser costosas de
crear. Sin embargo, abrir un documento debería
ser una operación rápida, por lo que se busca
evitar crear todos los objetos costosos a la vez
en cuanto se abre el documento. Además
tampoco es necesario que todos los objetos
sean visibles al mismo tiempo.
Solución
Estas restricciones sugieren que cada objeto se
cree a petición, lo que en este caso tendrá lugar
cuando la imagen se hace visible. Esta
optimización no debería influir en el código de
visualización y formateado.
La solución es utilizar otro objeto, un proxy que
actúe como un sustituto de la imagen real. El proxy
se comporta igual que la imagen y se encarga de
crearla cuando sea necesario.
Diagrama de clases genérico
Participantes
● Proxy:
– Mantiene una referencia que permite al proxy
acceder al objeto real.
– Proporciona una interfaz idéntica a la del Sujeto,
de manera que un proxy pueda ser sustituido por
el sujeto real.
– Controla el acceso al sujeto real, y puede ser
responsable de su creación y borrado.
Participantes (cont.)
● Sujeto
– Define la interfaz común para el Sujeto Real y el Proxy,
de modo que pueda usarse un Proxy en cualquier sitio
en el que se espere un Sujeto Real.
● Sujeto Real
– Define el objeto real representado.
● Cliente
– Interactúa con el Sujeto de manera independiente de si
este es un Sujeto Real o un Proxy.
Ejemplo
Consecuencias
● Ventajas
– Mejora la eficiencia y reduce costos.
– Un proxy de tipo remoto puede ocultar el hecho de
que un objeto reside en un espacio de direcciones
diferente.
– Un proxy virtual puede llevar a cabo optimizaciones
tales como crear un objeto por encargo.
– Un proxy de protección permite controlar el acceso al
objeto original. Dependiendo de los permisos que
tenga asignados un Cliente.
● Desventajas
– Compleja implementación.
Bibliografía
● Patrones de Diseño – Erich Gamma.
● Wikipedia.
● http://www.openloop.com/softwareEngineering
/patterns/designPattern/dPattern_Proxy.htm

More Related Content

Similar to Patrones de Diseño de Software: Proxy

Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
kaolong
 
Power builder 7.0 diseno de aplicaciones
Power builder 7.0   diseno de aplicacionesPower builder 7.0   diseno de aplicaciones
Power builder 7.0 diseno de aplicaciones
David
 
Taller de prototipado iterativo
Taller de prototipado iterativoTaller de prototipado iterativo
Taller de prototipado iterativo
Martín S
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patrones
Marvin Zumbado
 
(289162530) taller 6 seminario
(289162530) taller 6 seminario(289162530) taller 6 seminario
(289162530) taller 6 seminario
281115
 
Estela Monrroy Teorias de proyectos web
 Estela Monrroy Teorias de proyectos web Estela Monrroy Teorias de proyectos web
Estela Monrroy Teorias de proyectos web
Nayely Ttb
 
Computacion basica priscila garcia
Computacion basica priscila garciaComputacion basica priscila garcia
Computacion basica priscila garcia
Priscila García
 

Similar to Patrones de Diseño de Software: Proxy (20)

Proxy observer patrones
Proxy observer patronesProxy observer patrones
Proxy observer patrones
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Catalogo de patrones 0
Catalogo de patrones 0Catalogo de patrones 0
Catalogo de patrones 0
 
Power builder 7.0 diseno de aplicaciones
Power builder 7.0   diseno de aplicacionesPower builder 7.0   diseno de aplicaciones
Power builder 7.0 diseno de aplicaciones
 
Ddd + ah + microservicios
Ddd + ah + microserviciosDdd + ah + microservicios
Ddd + ah + microservicios
 
Cliente/Servidor
Cliente/ServidorCliente/Servidor
Cliente/Servidor
 
Cómo prototipar exitosamente tu proyecto
Cómo prototipar exitosamente tu proyectoCómo prototipar exitosamente tu proyecto
Cómo prototipar exitosamente tu proyecto
 
Taller de prototipado iterativo
Taller de prototipado iterativoTaller de prototipado iterativo
Taller de prototipado iterativo
 
Fundamentos de Red
Fundamentos de RedFundamentos de Red
Fundamentos de Red
 
Modelos de red
Modelos de redModelos de red
Modelos de red
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patrones
 
Visteme con 'Clean Architecture' que tengo prisas
Visteme con 'Clean Architecture' que tengo prisasVisteme con 'Clean Architecture' que tengo prisas
Visteme con 'Clean Architecture' que tengo prisas
 
(289162530) taller 6 seminario
(289162530) taller 6 seminario(289162530) taller 6 seminario
(289162530) taller 6 seminario
 
Patrones de creación
Patrones de creaciónPatrones de creación
Patrones de creación
 
Estela Monrroy Teorias de proyectos web
 Estela Monrroy Teorias de proyectos web Estela Monrroy Teorias de proyectos web
Estela Monrroy Teorias de proyectos web
 
Js
JsJs
Js
 
Taller 6
Taller 6Taller 6
Taller 6
 
2.1 Diseño, prototipo y construcción
2.1 Diseño, prototipo y construcción2.1 Diseño, prototipo y construcción
2.1 Diseño, prototipo y construcción
 
Computacion basica priscila garcia
Computacion basica priscila garciaComputacion basica priscila garcia
Computacion basica priscila garcia
 

Recently uploaded

2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
El Fortí
 

Recently uploaded (20)

Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJOACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
ACTIVIDAD DIA DE LA MADRE FICHA DE TRABAJO
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 

Patrones de Diseño de Software: Proxy

  • 1. Patrones de Diseño Patrón de diseño PROXY ● Alumnos – Bongiovanni Ignacio – Bentolila Fernando – Dúcculi Lucas
  • 2. Motivación Pensemos en un editor de documentos que puede insertar objetos gráficos. Cierto tipo de imágenes (ej: bmp) pueden ser costosas de crear. Sin embargo, abrir un documento debería ser una operación rápida, por lo que se busca evitar crear todos los objetos costosos a la vez en cuanto se abre el documento. Además tampoco es necesario que todos los objetos sean visibles al mismo tiempo.
  • 3. Solución Estas restricciones sugieren que cada objeto se cree a petición, lo que en este caso tendrá lugar cuando la imagen se hace visible. Esta optimización no debería influir en el código de visualización y formateado. La solución es utilizar otro objeto, un proxy que actúe como un sustituto de la imagen real. El proxy se comporta igual que la imagen y se encarga de crearla cuando sea necesario.
  • 4. Diagrama de clases genérico
  • 5. Participantes ● Proxy: – Mantiene una referencia que permite al proxy acceder al objeto real. – Proporciona una interfaz idéntica a la del Sujeto, de manera que un proxy pueda ser sustituido por el sujeto real. – Controla el acceso al sujeto real, y puede ser responsable de su creación y borrado.
  • 6. Participantes (cont.) ● Sujeto – Define la interfaz común para el Sujeto Real y el Proxy, de modo que pueda usarse un Proxy en cualquier sitio en el que se espere un Sujeto Real. ● Sujeto Real – Define el objeto real representado. ● Cliente – Interactúa con el Sujeto de manera independiente de si este es un Sujeto Real o un Proxy.
  • 8. Consecuencias ● Ventajas – Mejora la eficiencia y reduce costos. – Un proxy de tipo remoto puede ocultar el hecho de que un objeto reside en un espacio de direcciones diferente. – Un proxy virtual puede llevar a cabo optimizaciones tales como crear un objeto por encargo. – Un proxy de protección permite controlar el acceso al objeto original. Dependiendo de los permisos que tenga asignados un Cliente. ● Desventajas – Compleja implementación.
  • 9. Bibliografía ● Patrones de Diseño – Erich Gamma. ● Wikipedia. ● http://www.openloop.com/softwareEngineering /patterns/designPattern/dPattern_Proxy.htm