SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
Patrones Proxy y
Observer
Preparado por:
Sebastián González Méndez
Mauricio Umaña Rodríguez
Carlos Coronel Murillo
PatrónProxy
Proxy (Sustituto)
Propósito
Proporcionar un sustituto de un objeto para controlar el
acceso a dicho objeto.
Motivación
Diferir el coste de crear un objeto hasta que sea necesario
usarlo: creación bajo demanda.
Un editor de documentos que incluyen objetos gráficos.
¿Cómo ocultamos que una imagen se creará cuando se
necesite? Manejar el documento requiere conocer
información sobre la imagen.
3
Proxy
• Motivación
o Hay situaciones en las que un cliente no referencia o no
puede referenciar a un objeto directamente, pero necesita
interactuar con él.
o Un objeto proxy puede actuar como intermediario entre el
objeto cliente y el objeto destino.
o El objeto proxy tiene la misma interfaz como el objeto
destino.
o El objeto proxy mantiene una referencia al objeto destino y
puede pasarle a él los mensajes recibidos (delegación).
4
Proxy
• Motivación
o Retrasar la operación de una clonación de una tabla hasta
conocer que es realmente necesaria. Se desea clonar la tabla
para evitar mantener un bloqueo un largo período de tiempo,
lo cual es una operación costosa. Se puede crear una clase
que encapsule la tabla y sólo clone cuando sea necesario.
o Mantenimiento de los servicios ante los fallos.
5
Proxy
6
Estructura
Básica
Proxy
O Aplicabilidad
O Siempre que hay necesidad de referenciar a un objeto
mediante una referencia más rica que un puntero o una
referencia normal.
O Situaciones comunes:
1. Proxy acceso remoto (acceso a un objeto en otro espacio de
direcciones)
2. Proxy virtual (crea objetos grandes bajo demanda)
3. Proxy para protección (controlar acceso a un objeto)
4. Referencia inteligente (smart reference, proporciona
operaciones adicionales)
7
Participantes en estructura Proxy
8
 La clase Proxy: mantiene una referencia al objeto real y
proporciona una interfaz idéntica al sujeto. Además controla
el acceso a dicho objeto real y puede ser el responsable de
su creación y borrado.
 La clase Sujeto: define una interfaz común para el proxy y el
objeto real, de tal modo que se puedan usar de manera
indistinta.
 La clase Sujeto Real: clase del objeto real que el proxy
representa.
Proxy
O Consecuencias
∆ Introduce un nivel de dirección para:
1. Un proxy remoto oculta el hecho que objetos residen en
diferentes espacios de direcciones.
2. Un proxy virtual tales como crear o copiar un objeto bajo
demanda.
3. Un proxy para protección o las referencias inteligentes
permiten realizar tareas de control sobre los objetos
accedidos.
9
Implementación Proxy
10
Patrón Observer
Propósito
Definir una dependencia entre objetos de uno a muchos de
modo que cuando un objeto cambia su estado todos sus
dependientes son notificados y actualizados
automáticamente.
Aplicabilidad
 Cuando se desea que la aplicacion a ser implementada se
requieretenga un objeto que sea observado por uno o varios
objetos diferentes.
Ejemplo: una Subasta. En la que de ser un aplicativo
requeriria de objetos clientes (clientes de la subasta), los cuales
son los objetos que observan y el objeto subastador (subastador) el
cual seria el objeto observado y del cual se desea conocer siempre
sus cambios.
Estructura
Participantes en estructura Observer
1) Observador (Observer) : <<Interface>>
Define el método que usa el sujeto para notificar cambios en su estado.
2) ObservadorConcreto (ConcreteObserver) : Objeto
Mantiene una referencia al sujeto concreto e implementa el observador.
3) Sujeto (Subject) : <<Interface>>
Agrega y elimina observadores. El Sujeto conoce a todos sus observadores.
4) SujetoConcreto (ConcreteSubject) : Objeto
Mantiene el estado de interés para los observadores concretos.
Los notifica cuando cambia su estado.
Observer
Ventaja:
Abstrae el acoplamiento entre el sujeto y el observador, lo cual es
beneficioso ya que conseguimos una mayor independencia.
Desventaja:
Con el uso de este patrón ocurre que vamos a desconocer las
consecuencias de una actualización, lo cual dependiendo del
problema puede afectar al rendimiento.
Consecuencias
O Riesgo de ralentización.( Disminución de la velocidad de respuesta
del sistema). Esto debido a la cadena de notificaciones.
O Los ciclos de notificaciones tanto del objeto observable como los
objetos observadores al producir y reproducir cadenas de
notificaciones, puede ocasionar una disminución en la memoria del
sistema o inclusive un agotamiento de la misma. (Stack OverFlow)
O Ciclos infinitos.
Implementación
MUCHAS GRACIAS.

Más contenido relacionado

Similar a Proxy observer patrones (20)

Patron de diseño proxy
Patron de diseño proxyPatron de diseño proxy
Patron de diseño proxy
 
Patrones proxy
Patrones proxyPatrones proxy
Patrones proxy
 
Informe patron proxy
Informe patron proxyInforme patron proxy
Informe patron proxy
 
Patron observador
Patron observadorPatron observador
Patron observador
 
Observer: Patrón de diseño
Observer: Patrón de diseñoObserver: Patrón de diseño
Observer: Patrón de diseño
 
Observer
ObserverObserver
Observer
 
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
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
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
 
Base de datos orientada a objetos vs base obje to relacion
Base de datos orientada a objetos vs base obje to relacionBase de datos orientada a objetos vs base obje to relacion
Base de datos orientada a objetos vs base obje to relacion
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
 
Observer design pattern
Observer design patternObserver design pattern
Observer design pattern
 
Observer design pattern
Observer design patternObserver design pattern
Observer design pattern
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
MODELADO.docx
MODELADO.docxMODELADO.docx
MODELADO.docx
 
Patrones
PatronesPatrones
Patrones
 
Patrones de diseño de GoF
Patrones de diseño de GoFPatrones de diseño de GoF
Patrones de diseño de GoF
 
Unidad 2. Tópicos de base de datos
Unidad 2. Tópicos de base de datosUnidad 2. Tópicos de base de datos
Unidad 2. Tópicos de base de datos
 

Último

Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptxBRAYANJOSEPTSANJINEZ
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismosaultorressep
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxYajairaMartinez30
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASPersonalJesusGranPod
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxChristopherOlave2
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 

Último (20)

Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Condensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismoCondensadores de la rama de electricidad y magnetismo
Condensadores de la rama de electricidad y magnetismo
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptx
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
Clase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptxClase 2 Revoluciones Industriales y .pptx
Clase 2 Revoluciones Industriales y .pptx
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 

Proxy observer patrones

  • 1. Patrones Proxy y Observer Preparado por: Sebastián González Méndez Mauricio Umaña Rodríguez Carlos Coronel Murillo
  • 3. Proxy (Sustituto) Propósito Proporcionar un sustituto de un objeto para controlar el acceso a dicho objeto. Motivación Diferir el coste de crear un objeto hasta que sea necesario usarlo: creación bajo demanda. Un editor de documentos que incluyen objetos gráficos. ¿Cómo ocultamos que una imagen se creará cuando se necesite? Manejar el documento requiere conocer información sobre la imagen. 3
  • 4. Proxy • Motivación o Hay situaciones en las que un cliente no referencia o no puede referenciar a un objeto directamente, pero necesita interactuar con él. o Un objeto proxy puede actuar como intermediario entre el objeto cliente y el objeto destino. o El objeto proxy tiene la misma interfaz como el objeto destino. o El objeto proxy mantiene una referencia al objeto destino y puede pasarle a él los mensajes recibidos (delegación). 4
  • 5. Proxy • Motivación o Retrasar la operación de una clonación de una tabla hasta conocer que es realmente necesaria. Se desea clonar la tabla para evitar mantener un bloqueo un largo período de tiempo, lo cual es una operación costosa. Se puede crear una clase que encapsule la tabla y sólo clone cuando sea necesario. o Mantenimiento de los servicios ante los fallos. 5
  • 7. Proxy O Aplicabilidad O Siempre que hay necesidad de referenciar a un objeto mediante una referencia más rica que un puntero o una referencia normal. O Situaciones comunes: 1. Proxy acceso remoto (acceso a un objeto en otro espacio de direcciones) 2. Proxy virtual (crea objetos grandes bajo demanda) 3. Proxy para protección (controlar acceso a un objeto) 4. Referencia inteligente (smart reference, proporciona operaciones adicionales) 7
  • 8. Participantes en estructura Proxy 8  La clase Proxy: mantiene una referencia al objeto real y proporciona una interfaz idéntica al sujeto. Además controla el acceso a dicho objeto real y puede ser el responsable de su creación y borrado.  La clase Sujeto: define una interfaz común para el proxy y el objeto real, de tal modo que se puedan usar de manera indistinta.  La clase Sujeto Real: clase del objeto real que el proxy representa.
  • 9. Proxy O Consecuencias ∆ Introduce un nivel de dirección para: 1. Un proxy remoto oculta el hecho que objetos residen en diferentes espacios de direcciones. 2. Un proxy virtual tales como crear o copiar un objeto bajo demanda. 3. Un proxy para protección o las referencias inteligentes permiten realizar tareas de control sobre los objetos accedidos. 9
  • 12. Propósito Definir una dependencia entre objetos de uno a muchos de modo que cuando un objeto cambia su estado todos sus dependientes son notificados y actualizados automáticamente.
  • 13. Aplicabilidad  Cuando se desea que la aplicacion a ser implementada se requieretenga un objeto que sea observado por uno o varios objetos diferentes. Ejemplo: una Subasta. En la que de ser un aplicativo requeriria de objetos clientes (clientes de la subasta), los cuales son los objetos que observan y el objeto subastador (subastador) el cual seria el objeto observado y del cual se desea conocer siempre sus cambios.
  • 15. Participantes en estructura Observer 1) Observador (Observer) : <<Interface>> Define el método que usa el sujeto para notificar cambios en su estado. 2) ObservadorConcreto (ConcreteObserver) : Objeto Mantiene una referencia al sujeto concreto e implementa el observador. 3) Sujeto (Subject) : <<Interface>> Agrega y elimina observadores. El Sujeto conoce a todos sus observadores. 4) SujetoConcreto (ConcreteSubject) : Objeto Mantiene el estado de interés para los observadores concretos. Los notifica cuando cambia su estado.
  • 16. Observer Ventaja: Abstrae el acoplamiento entre el sujeto y el observador, lo cual es beneficioso ya que conseguimos una mayor independencia. Desventaja: Con el uso de este patrón ocurre que vamos a desconocer las consecuencias de una actualización, lo cual dependiendo del problema puede afectar al rendimiento.
  • 17. Consecuencias O Riesgo de ralentización.( Disminución de la velocidad de respuesta del sistema). Esto debido a la cadena de notificaciones. O Los ciclos de notificaciones tanto del objeto observable como los objetos observadores al producir y reproducir cadenas de notificaciones, puede ocasionar una disminución en la memoria del sistema o inclusive un agotamiento de la misma. (Stack OverFlow) O Ciclos infinitos.