SlideShare una empresa de Scribd logo
1 de 8
PATRON DE DISEÑO

       PROXY
        INTEGRANTES:
   JOSÉ ÁNGEL TORRES PIÑA
 ADRIANA ZAMARRIPA GALLEGOS
 MARÍA CRISTINA GARCÍA LÓPEZ
    MARISOL CRUZ SALIVAR
CESAR MARTIN GONZÁLEZ DUEÑAS
INTRODUCCION

Clasificación: Estructural
Intención: Provee un sustituto de un objeto para
controlar su acceso.
También conocido como Surrogate (sustituto).
Motivo
Una razón para controlar el acceso de un objeto es
postergar el costo de su creación hasta el momento
en que lo necesitemos. Considere un editor de
texto, que ofrece la capacidad de embeber objetos
gráficos en el documento. Algunas gráficas necesitan
cargar imágenes pesadas, y por lo tanto es costoso
crearlas.
Concepto

 Proxy es un patrón estructural que tiene como
  propósito      proporcionar   un    subrogado       o
  intermediario de un objeto para controlar su acceso.
 Este patrón es ampliamente utilizado en frameworks
  cómo Hibernate o Spring AOP, permitiendo capturar
  las llamadas a objetos POJO y permitiendo insertar en
  ellas capacidades de persistencia para el caso de
  Hibernate, u otro tipo de aspectos como gestión de
  seguridad o transacciones para Spring AOP.
 A continuación mostramos el diagrama de clases del
  patrón Proxy:




En este patrón se identifica una interfaz Subject, un
objeto RealSubject que es el objeto al que se accede a
través del Proxy. El objeto Proxy mantiene una
referencia al objeto RealSubject y controla el acceso a sus
métodos, introduciendo las capacidades adicionales que
fuesen necesarias. Tanto la clase RealSubject como la
clase Proxy implementan la interfaz Subject
Aplicabilidad

Proxy se utiliza siempre que se necesite utilizar una
referencia versátil a un objeto. A continuación se describen
algunas situaciones comunes en las que se debe aplicar el
patrón proxy:
• Proxy remoto. Se desea representar un objeto remoto
como                                                  local.
• Proxy virtual. Se desea crear objetos pesados por
                          demanda.
• Proxy protector. Se desea controlar el acceso a un objeto.
• Una referencia inteligente remplaza a un punto básico de
acceso para ejecutar cambios cuando un objeto es
accedido.
Caracteristicas

 Proporcionan soluciones concretas en la creación de
  objetos pesados
 Proporcionan soluciones técnicas para la utilización
  de las carga de objetos de gran tamaño.
 Se utilizan en situaciones frecuentes.
 Favorece la reutilización de código .
Ventajas
 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: codifican las peticiones, y se las mandan al sujeto.
• Proxy virtual: Puede guardar información adicional sobre el
sujeto, para
retardar el acceso al mismo.
• Proxy de protección: comprueba
   Otra optimización: copy-on-write.
 Copiar un objeto grande puede ser costoso.
    Si la copia no se modifica, no hay necesidad de incurrir en dicho
gasto.
 El sujeto mantiene una cuenta de referencias, sólo cuando se hace
   objeto ej : 75
 Una operación que modifica el objeto, se copia realmente (ej.: clase
String del ejemplo de operadores C++).
Desventajas

 Introduce un nivel de induración adicional, que tiene
  muchos posibles usos:
 Un proxy remoto puede ocultar el hecho de que un
  objeto reside en otro espacio de direcciones.
 Un        proxy       virtual      puede       realizar
  optimizaciones, como crear objetos bajo demanda.
 Tanto los proxies de protección, como las referencias
  inteligentes    permiten      realizar    tareas     de
  mantenimiento adicionales cuando se accede a un
  objeto.

Más contenido relacionado

La actualidad más candente

Solid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJSSolid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJSRafael Casuso Romate
 
Visitor Pattern
Visitor PatternVisitor Pattern
Visitor PatternIder Zheng
 
Introduction to design patterns
Introduction to design patternsIntroduction to design patterns
Introduction to design patternsAmit Kabra
 
Design Patterns & JDK Examples
Design Patterns & JDK ExamplesDesign Patterns & JDK Examples
Design Patterns & JDK ExamplesEnder Aydin Orak
 
Informe analisis
Informe analisisInforme analisis
Informe analisisbrayanfp
 
Java Course 11: Design Patterns
Java Course 11: Design PatternsJava Course 11: Design Patterns
Java Course 11: Design PatternsAnton Keks
 
Proxy design pattern (Class Ambassador)
Proxy design pattern (Class Ambassador)Proxy design pattern (Class Ambassador)
Proxy design pattern (Class Ambassador)Sameer Rathoud
 
Py.test
Py.testPy.test
Py.testsoasme
 
Composition in OOP
Composition in OOPComposition in OOP
Composition in OOPHuba Akhtar
 
¿A qué huele tu código? Afinando nuestro olfato
¿A qué huele tu código? Afinando nuestro olfato¿A qué huele tu código? Afinando nuestro olfato
¿A qué huele tu código? Afinando nuestro olfatoRubén Bernárdez
 

La actualidad más candente (20)

Solid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJSSolid NodeJS with TypeScript, Jest & NestJS
Solid NodeJS with TypeScript, Jest & NestJS
 
Visitor Pattern
Visitor PatternVisitor Pattern
Visitor Pattern
 
Collections in-csharp
Collections in-csharpCollections in-csharp
Collections in-csharp
 
Introduction to design patterns
Introduction to design patternsIntroduction to design patterns
Introduction to design patterns
 
Prototype pattern
Prototype patternPrototype pattern
Prototype pattern
 
Design Patterns & JDK Examples
Design Patterns & JDK ExamplesDesign Patterns & JDK Examples
Design Patterns & JDK Examples
 
Proxy design pattern
Proxy design patternProxy design pattern
Proxy design pattern
 
Informe analisis
Informe analisisInforme analisis
Informe analisis
 
Java Course 11: Design Patterns
Java Course 11: Design PatternsJava Course 11: Design Patterns
Java Course 11: Design Patterns
 
Flyweight pattern
Flyweight patternFlyweight pattern
Flyweight pattern
 
Proxy design pattern (Class Ambassador)
Proxy design pattern (Class Ambassador)Proxy design pattern (Class Ambassador)
Proxy design pattern (Class Ambassador)
 
Patrones proxy
Patrones proxyPatrones proxy
Patrones proxy
 
Delegetes in c#
Delegetes in c#Delegetes in c#
Delegetes in c#
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
 
Py.test
Py.testPy.test
Py.test
 
Composition in OOP
Composition in OOPComposition in OOP
Composition in OOP
 
Facade pattern
Facade patternFacade pattern
Facade pattern
 
¿A qué huele tu código? Afinando nuestro olfato
¿A qué huele tu código? Afinando nuestro olfato¿A qué huele tu código? Afinando nuestro olfato
¿A qué huele tu código? Afinando nuestro olfato
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Adapter pattern
Adapter patternAdapter pattern
Adapter pattern
 

Destacado

Patrones de diseño Proxy
Patrones  de diseño ProxyPatrones  de diseño Proxy
Patrones de diseño ProxyFreddy Ojeda
 
Cuadro comparativo tics
Cuadro comparativo ticsCuadro comparativo tics
Cuadro comparativo tics1020825116
 
Patrones de diseño - Andrés Dorado
Patrones de diseño - Andrés DoradoPatrones de diseño - Andrés Dorado
Patrones de diseño - Andrés Dorado2008PA2Info3
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño Ikaolong
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseñolandeta_p
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de softwareIker Canarias
 

Destacado (6)

Patrones de diseño Proxy
Patrones  de diseño ProxyPatrones  de diseño Proxy
Patrones de diseño Proxy
 
Cuadro comparativo tics
Cuadro comparativo ticsCuadro comparativo tics
Cuadro comparativo tics
 
Patrones de diseño - Andrés Dorado
Patrones de diseño - Andrés DoradoPatrones de diseño - Andrés Dorado
Patrones de diseño - Andrés Dorado
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
 

Similar a Patron de diseño proxy

Informe patron proxy
Informe patron proxyInforme patron proxy
Informe patron proxycams21
 
Proxy observer patrones
Proxy observer patronesProxy observer patrones
Proxy observer patronesCarlos Coronel
 
Monografia patrones de diseño proxy (3.0)
Monografia   patrones de diseño proxy (3.0)Monografia   patrones de diseño proxy (3.0)
Monografia patrones de diseño proxy (3.0)finger10
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño IIkaolong
 
Patrones de Diseño de Software: Proxy
Patrones de Diseño de Software: ProxyPatrones de Diseño de Software: Proxy
Patrones de Diseño de Software: ProxyNacho Bongiovanni
 
Tesis Licenciatura
Tesis LicenciaturaTesis Licenciatura
Tesis Licenciaturasergiovier
 
Patrones de diseño de GoF
Patrones de diseño de GoFPatrones de diseño de GoF
Patrones de diseño de GoFYaskelly Yedra
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patronesMarvin Zumbado
 
Novedades de aries
Novedades de ariesNovedades de aries
Novedades de arieslmrv
 
Practicas proxy
Practicas proxyPracticas proxy
Practicas proxyyese94
 
Manual hibernate
Manual hibernateManual hibernate
Manual hibernateshimbosan17
 
Tarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdfTarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdfBrimmerRamrez
 
Catalogo de patrones 0
Catalogo de patrones 0Catalogo de patrones 0
Catalogo de patrones 0Fabio Ruiz
 
Propuestas de proyectos fin de estudios curso 2013
Propuestas de proyectos fin de estudios curso 2013Propuestas de proyectos fin de estudios curso 2013
Propuestas de proyectos fin de estudios curso 2013Amador Aparicio
 

Similar a Patron de diseño proxy (20)

Informe patron proxy
Informe patron proxyInforme patron proxy
Informe patron proxy
 
Proxy observer patrones
Proxy observer patronesProxy observer patrones
Proxy observer patrones
 
Monografia patrones de diseño proxy (3.0)
Monografia   patrones de diseño proxy (3.0)Monografia   patrones de diseño proxy (3.0)
Monografia patrones de diseño proxy (3.0)
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
 
Patrones de Diseño de Software: Proxy
Patrones de Diseño de Software: ProxyPatrones de Diseño de Software: Proxy
Patrones de Diseño de Software: Proxy
 
Tesis Licenciatura
Tesis LicenciaturaTesis Licenciatura
Tesis Licenciatura
 
Cliente/Servidor
Cliente/ServidorCliente/Servidor
Cliente/Servidor
 
Patrones de diseño de GoF
Patrones de diseño de GoFPatrones de diseño de GoF
Patrones de diseño de GoF
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patrones
 
Lab Tr5 Multicapa
Lab Tr5 MulticapaLab Tr5 Multicapa
Lab Tr5 Multicapa
 
Novedades de aries
Novedades de ariesNovedades de aries
Novedades de aries
 
Practicas proxy
Practicas proxyPracticas proxy
Practicas proxy
 
Manual hibernate
Manual hibernateManual hibernate
Manual hibernate
 
Tarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdfTarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdf
 
Novedades de aries
Novedades de ariesNovedades de aries
Novedades de aries
 
Catalogo de patrones 0
Catalogo de patrones 0Catalogo de patrones 0
Catalogo de patrones 0
 
Propuestas de proyectos fin de estudios curso 2013
Propuestas de proyectos fin de estudios curso 2013Propuestas de proyectos fin de estudios curso 2013
Propuestas de proyectos fin de estudios curso 2013
 
Tarea proxy
Tarea proxyTarea proxy
Tarea proxy
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Clase 19 programación en base a patrones
Clase 19 programación en base a patronesClase 19 programación en base a patrones
Clase 19 programación en base a patrones
 

Último

9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 

Último (13)

9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Patron de diseño proxy

  • 1. PATRON DE DISEÑO PROXY INTEGRANTES: JOSÉ ÁNGEL TORRES PIÑA ADRIANA ZAMARRIPA GALLEGOS MARÍA CRISTINA GARCÍA LÓPEZ MARISOL CRUZ SALIVAR CESAR MARTIN GONZÁLEZ DUEÑAS
  • 2. INTRODUCCION Clasificación: Estructural Intención: Provee un sustituto de un objeto para controlar su acceso. También conocido como Surrogate (sustituto). Motivo Una razón para controlar el acceso de un objeto es postergar el costo de su creación hasta el momento en que lo necesitemos. Considere un editor de texto, que ofrece la capacidad de embeber objetos gráficos en el documento. Algunas gráficas necesitan cargar imágenes pesadas, y por lo tanto es costoso crearlas.
  • 3. Concepto  Proxy es un patrón estructural que tiene como propósito proporcionar un subrogado o intermediario de un objeto para controlar su acceso.  Este patrón es ampliamente utilizado en frameworks cómo Hibernate o Spring AOP, permitiendo capturar las llamadas a objetos POJO y permitiendo insertar en ellas capacidades de persistencia para el caso de Hibernate, u otro tipo de aspectos como gestión de seguridad o transacciones para Spring AOP.
  • 4.  A continuación mostramos el diagrama de clases del patrón Proxy: En este patrón se identifica una interfaz Subject, un objeto RealSubject que es el objeto al que se accede a través del Proxy. El objeto Proxy mantiene una referencia al objeto RealSubject y controla el acceso a sus métodos, introduciendo las capacidades adicionales que fuesen necesarias. Tanto la clase RealSubject como la clase Proxy implementan la interfaz Subject
  • 5. Aplicabilidad Proxy se utiliza siempre que se necesite utilizar una referencia versátil a un objeto. A continuación se describen algunas situaciones comunes en las que se debe aplicar el patrón proxy: • Proxy remoto. Se desea representar un objeto remoto como local. • Proxy virtual. Se desea crear objetos pesados por demanda. • Proxy protector. Se desea controlar el acceso a un objeto. • Una referencia inteligente remplaza a un punto básico de acceso para ejecutar cambios cuando un objeto es accedido.
  • 6. Caracteristicas  Proporcionan soluciones concretas en la creación de objetos pesados  Proporcionan soluciones técnicas para la utilización de las carga de objetos de gran tamaño.  Se utilizan en situaciones frecuentes.  Favorece la reutilización de código .
  • 7. Ventajas  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: codifican las peticiones, y se las mandan al sujeto. • Proxy virtual: Puede guardar información adicional sobre el sujeto, para retardar el acceso al mismo. • Proxy de protección: comprueba Otra optimización: copy-on-write.  Copiar un objeto grande puede ser costoso. Si la copia no se modifica, no hay necesidad de incurrir en dicho gasto.  El sujeto mantiene una cuenta de referencias, sólo cuando se hace objeto ej : 75  Una operación que modifica el objeto, se copia realmente (ej.: clase String del ejemplo de operadores C++).
  • 8. Desventajas  Introduce un nivel de induración adicional, que tiene muchos posibles usos:  Un proxy remoto puede ocultar el hecho de que un objeto reside en otro espacio de direcciones.  Un proxy virtual puede realizar optimizaciones, como crear objetos bajo demanda.  Tanto los proxies de protección, como las referencias inteligentes permiten realizar tareas de mantenimiento adicionales cuando se accede a un objeto.