Evolución MVC

31
Norberto Ortigoza

Transcript of Evolución MVC

Page 1: Evolución MVC

Norberto Ortigoza

Page 2: Evolución MVC

¡Eso ya lo se!

Page 3: Evolución MVC
Page 4: Evolución MVC

El desarrollador promedio no lo conoce

¡A pesar de que existe desde hace mas de 30 años!

Page 5: Evolución MVC

Otros hablan mucho de MVC“¡Es importante usarlo!”“Mi herramienta lo usa”

“¡Hay que usar patrones!”

Page 6: Evolución MVC

Pocos conocen la arquitectura original…

Page 7: Evolución MVC

Otros la conocieron pero ya se les olvido…

Page 8: Evolución MVC

Otros están intrigados

Page 9: Evolución MVC
Page 10: Evolución MVC
Page 11: Evolución MVC

Los desarrolladores escriben formas especificas de la aplicación que usan controles genéricos.

Las formas describen el layout de los controles.

Page 12: Evolución MVC
Page 13: Evolución MVC

Ediciones simples de datos son manejadas a través de data binding.

La forma observa los controles y tiene

métodos que reaccionan a eventos disparados por los controles (maneja cambios complejos).

Page 14: Evolución MVC
Page 15: Evolución MVC
Page 16: Evolución MVC

Hace una clara separación entre presentación (view & controller) y el dominio (model) - Separated Presentation.

Page 17: Evolución MVC

Divide los widgets del GUI en un controlador (para reaccionar a los estímulos del usuario) y una vista (para desplegar el estado del modelo).

El Controller y la View solo se deberían de comunicar a través del modelo.

Page 18: Evolución MVC
Page 19: Evolución MVC

Las vistas y los controladores observan el modelo para permitir que múltiples widgets se actualicen sin necesidad de comunicarse directamente - Observer Synchronization.

Page 20: Evolución MVC
Page 21: Evolución MVC

En MVC es fundamental el concepto de Modelo del Dominio.

Hay lógica que no pertenece al Dominio (lógica y estado de la vista).

Page 22: Evolución MVC
Page 23: Evolución MVC

Controller

ViewPresentation Model

DODO

DO

Modelo de la Aplicación Interface con el Usuario

Modelo

Dominio

Page 24: Evolución MVC
Page 25: Evolución MVC

Unificación de Formas y Controles con MVC.

Interacciones del usuario son manejados por el Presenter.

Los widgets son actualizados por medio del Observer.

Page 26: Evolución MVC

Presenter

View

Model

DODO

DO

Dominio Interface con el Usuario

Page 27: Evolución MVC
Page 28: Evolución MVC
Page 29: Evolución MVC

El Presenter manipula los widgets directamente solo en los casos mas complejos. -Supervising Controller

El Presenter controla completamente los widgets. -Passive View

Page 30: Evolución MVC

Cuando el Presenter controla por completo a los widgets se puede probar gran parte del sistema sin recurrir al GUI.

Se requiere contar con un Test Double para simular el GUI.

Page 31: Evolución MVC

¡Ya termine!