La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Departamento de Ingeniería del Software e Inteligencia Artificial Universidad Complutense de Madrid Simulación del patrón … (1)

Presentaciones similares


Presentación del tema: "Departamento de Ingeniería del Software e Inteligencia Artificial Universidad Complutense de Madrid Simulación del patrón … (1)"— Transcripción de la presentación:

1 Departamento de Ingeniería del Software e Inteligencia Artificial Universidad Complutense de Madrid Simulación del patrón … (1)

2 Editor gráfico: 1ª Iteración  Construcción de un editor gráfico muy sencillo  Primera iteración  Dos figuras simples  Rectángulo  Elipse  Una herramienta de creación para cada una de ellas  Al pulsar sobre el área de dibujado aparece una figura de un tamaño concreto

3 Simulación del patrón … (1) Clases iniciales

4 Simulación del patrón … (1) Escenario 1: Pulsación de un botón  Vuestro primer role-play  ¿Qué pasa al pulsar uno de los botones de la interfaz?  VentanaEditor es quien recibe el evento ActionPerformed  Pregunta a BotonHerramienta por el tipo de herramienta que se ha activado  Informa al area de dibujado de la acción seleccionada

5 Simulación del patrón … (1) Escenario 2: Pulsación sobre el área de dibujado (1)  ¿Qué pasa al pulsar sobre el área de dibujado?  Dibujo es quien recibe el evento MousePressed  En areaDibujo, herramientaActiva=ELIPSE  Crea FElipse e inserta

6 Simulación del patrón … (1) Escenario 2: Pulsación sobre el área de dibujado (2)  ¿Qué pasa al pulsar sobre el área de dibujado?  Dibujo es quien recibe el evento MousePressed  En areaDibujo, herramientaActiva=RECT  Crea FRect e inserta

7 Simulación del patrón … (1) Conclusiones de este diseño  Código “poco ampliable”  Crear nuevas figuras supone crear nuevas constantes y añadir IFs  Código spaguetti  if...then...else if...  Necesitamos crear las figuras de otra forma…

8 Simulación del patrón … (1) Solución: Patrón Prototype  Propósito: permite representar un cierto tipo de objetos mediante una instancia prototípica, que se copia cada vez que se ha de crear un objeto nuevo  Roles:  Client: Crea los objetos pidiendo al prototipo que se clone  Protoype: Declara la interfaz de copia  Concrete prototype: Implementa una operación para copiarse a sí mismo

9 Simulación del patrón … (1) Nuevas clases

10 Simulación del patrón … (1) Escenario 1 (after) : Pulsación de un botón  ¿Qué pasa al pulsar uno de los botones de la interfaz?  VentanaEditor es quien recibe el evento ActionPerformed  Pregunta a BotonHerramienta por la herramienta que se ha activado  Informa al area de dibujado de la herramienta seleccionada

11 Simulación del patrón … (1) Escenario 2: Pulsación sobre el área de dibujado (1 y 2)  ¿Qué pasa al pulsar sobre el área de dibujado?  Dibujo es quien recibe el evento MousePressed  En areaDibujo, se pide a la herramienta activa que cree la figura

12 Simulación del patrón … (1) Ampliaciones  Desacopla a la herramienta de los tipos concretos de las figuras  Podemos crear nuevas figuras sin modificar la clase HerramientaCreacion  No necesitamos crear las jerarquías de factorías y objetos de otros patrones de creación  En Java, nos podemos aprovechar de la interfaz Cloneable  Método clone() para hacer una copia del objeto atributo a atributo  Cuidado con clases con atributos complejos

13 Simulación del patrón … (1) Conclusions


Descargar ppt "Departamento de Ingeniería del Software e Inteligencia Artificial Universidad Complutense de Madrid Simulación del patrón … (1)"

Presentaciones similares


Anuncios Google