1 / 14

Simulación del patrón … (4)

Simulación del patrón … (4). Editor gráfico: 4ª Iteración. Queremos poder agrupar figuras Simplificación: Crear un único grupo de figuras Herramienta agrupar Al pulsar sobre una figura, ésta se añade al grupo. Clases iniciales. Escenario 1: Añadir una figura al grupo.

sirius
Download Presentation

Simulación del patrón … (4)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Simulación del patrón … (4)

  2. Editor gráfico: 4ª Iteración • Queremos poder agrupar figuras • Simplificación: Crear un único grupo de figuras • Herramienta agrupar • Al pulsar sobre una figura, ésta se añade al grupo Simulación del patrón … (4)

  3. Clases iniciales Simulación del patrón … (4)

  4. Escenario 1: Añadir una figura al grupo • ¿Cómo se añade una nueva figura al grupo de figuras? • MousePressed • Si se ha pulsado sobre una figura: • Añadirla al grupo • Eliminarla del dibujo Simulación del patrón … (4)

  5. Escenario 2: Pintado del dibujo • ¿Cómo haremos el pintado del dibujo? • Antes sólo teníamos una lista de figuras • Ahora también tenemos que pintar el grupo aparte Simulación del patrón … (4)

  6. Escenario 3: Mover el grupo • ¿Cómo seleccionar y mover el grupo? • No es una figura, por lo que la herramienta de selección lo debe tratar aparte Simulación del patrón … (4)

  7. Conclusiones de este diseño • Aunque las figuras y el grupo tienen una interfaz similar en el código hay que tratarlos de distinta forma • Distinción entre objetos • Necesitamos estructurar las clases de otra forma… Simulación del patrón … (4)

  8. Solución: Patrón Composite • Propósito: permite representar estructuras continente-contenido donde los clientes tratan de igual forma a compuestos e individuos • Roles: • Component: Define la interfaz común a individuos y compuestos e implementa el comportamiento por defecto • Leaf: Son los elementos individuo • Composite • Contenedor de objetos Leaf • Implementa las operaciones de acceso a los hijos • Client manipula todos los objetos a través de la interfaz Component Simulación del patrón … (4)

  9. Solución: Patrón Composite Simulación del patrón … (4)

  10. Nuevas clases Simulación del patrón … (4)

  11. Escenario 1 (after): Añadir una figura al grupo • ¿Cómo se añade una nueva figura al grupo de figuras? • MousePressed • Si se ha pulsado sobre una figura: • Añadirla al grupo • Eliminarla del dibujo Simulación del patrón … (4)

  12. Escenario 2 y 3 (after) • ¿Cómo haremos el pintado del dibujo? • ¿Cómo seleccionamos el grupo de figuras? • ¿Cómo moveremos el grupo de figuras? Simulación del patrón … (4)

  13. Conclusiones • Hemos simplificado el código de Dibujo • No hay distinciones de casos • Podemos definir nuevas figuras compuestas sin afectar a la jerarquía de figuras • ¿Puede Dibujo implementarse usando GrupoFiguras? Simulación del patrón … (4)

  14. Conclusions Simulación del patrón … (4)

More Related