Simulacin del patrn 5 - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Simulacin del patrn 5

Description:

Obtener el tipo de manipulaci n que realizaremos sobre la figura. MouseDragged. Si el manipulador es de tipo 'encoger' Encoger la figura. Simulaci n del patr n ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 13
Provided by: gaiaF
Category:
Tags: del | el | patrn | simulacin | tipo

less

Transcript and Presenter's Notes

Title: Simulacin del patrn 5


1
Simulación del patrón (5)
2
Editor gráfico 5ª Iteración
  • Manipulaciones en las figuras
  • Se realizan con la herramienta de selección
  • Esquina superior izquierda Extender/Encoger
  • Cambia el tamaño de la figura proporcionalmente
  • Esquina inferior derecha estirar
  • Estira la figura, dejando fija la esquina
    superior izquierda

3
Clases iniciales
4
Escenario 1 Encoger una figura
  • Cómo se encoge la figura seleccionada?
  • Hay una figura seleccionada y tenemos activa la
    herramienta de selección
  • MousePressed
  • Si se ha pulsado sobre la figura seleccionada
  • Obtener el tipo de manipulación que realizaremos
    sobre la figura
  • MouseDragged
  • Si el manipulador es de tipo encoger
  • Encoger la figura

5
Escenario 2 Estirar una figura
  • Cómo se estira la figura seleccionada?
  • Hay una figura seleccionada y tenemos activa la
    herramienta de selección
  • MousePressed
  • Si se ha pulsado sobre la figura seleccionada
  • Obtener el tipo de manipulación que realizaremos
    sobre la figura
  • MouseDragged
  • Si el manipulador es de tipo estirar
  • Estirar la figura

6
Escenario 3 Mover una figura
  • Cómo se estira la figura seleccionada?
  • Hay una figura seleccionada y tenemos activa la
    herramienta de selección
  • MousePressed
  • Si se ha pulsado sobre la figura seleccionada
  • Obtener el tipo de manipulación que realizaremos
    sobre la figura
  • MouseDragged
  • Si el manipulador es de tipo mover
  • Mover la figura

7
Conclusiones de este diseño
  • De nuevo, código spaghetti
  • ifthenelse if
  • La misma herramienta ha de usar las figuras de
    varias formas distintas
  • Hay que adaptar su comportamiento al tipo de
    manipulación
  • Necesitamos estructurar las clases de otra forma

8
Solución Patrón Adapter
  • Propósito Convierte la interfaz de una clase a
    la que esperan los clientes
  • Roles (basado en composición)
  • Target Define la interfaz que espera el cliente
  • Adaptee Implementa la interfaz que queremos
    adaptar
  • Adapter Adapta la interfaz de adaptee a target

9
Nuevas clases
10
Escenario 1, 2 y 3 (after) Manipular una figura
  • Cómo se manipula (en general) la figura
    seleccionada?
  • Hay una figura seleccionada y tenemos activa la
    herramienta de selección
  • MousePressed
  • Si se ha pulsado sobre la figura seleccionada
  • Obtener el Manipulador que realizaremos sobre la
    figura
  • MouseDragged
  • Invocar el método de manipulación del Manipulador

11
Conclusiones
  • Se ha eliminado el código spaguetti
  • Se ha adaptado toda la funcionalidad para toda la
    jerarquía de figuras de una sola vez
  • Problema
  • Buscar la interfaz más estricta posible
  • Redefinir el comportamiento de la clase adaptada
    puede suponer revisar la interfaz

12
Conclusions
Write a Comment
User Comments (0)
About PowerShow.com