5. MVC
Controlador
Dividimos a todos los objetos de nuestra aplicación en 3 campos
Modelo Vista
6. MVC
Controlador
Modelo: lo que ES tu aplicación (aunque no cómo se muestra)
Modelo Vista
7. MVC
Controlador
Controlador: cómo se presenta gráficamente el modelo al usuario
Modelo Vista
8. jDiskReport
Un modelo: la lista de ficheros y
carpetas
Controlador Gráfico de “Tarta”
Controlador Jeráquico
9. jDiskReport
Un modelo: la lista de ficheros y
carpetas
Controlador Gráfico de barras por
distribución de tamaños
Controlador Jeráquico
10. Calculadora
Controlador estándar
Un modelo: las
funciones de cálculo
Controlador científico
11. MVC
Controlador
Vista: es la tropa de esclavos que usa tu controlador
Modelo Vista
12. No es lo mismo ser controlador
que vista
El controlador es la “cabeza que
piensa”
Las vistas son los “curritos”
13. Controlador y Vistas
El controlador no se ve. Es la “eminencia gris”.
Las vistas se ven. Son los “pringaos” que dan la
cara.
¿Quienes son las vistas en la calculadora?
19. Comunicación entre vista y
controlador
• ¿Puede la vista tener algo que decir al controlador?
• Por supuesto
• Soy un botón (UIButton) y han hecho click sobre mí.
• Soy una UIWebView y han hecho click sobre un enlace. ¿Puedo
cargarlo?
• Soy una UIWebView y acabo de cargar una nueva URL. Que lo
sepas.
20. Comunicación entre vista y
controlador
Hay dos formas “ciegas” por las que una vista se puede comunicar
con el controlador:
•Target / Action (Blanco / Acción): Cuando ocurra algo
interesante, echa una nota por debajo de esta puerta.
•Delegate: Cuando necesites más información sobre
cómo dibujarte en pantalla, llama a este número.
24. Comunicación entre modelo y
controlador
• ¿Puede el modelo tener algo que decir al controlador?
• Por supuesto, cualquier modificación que sufre el modelo debe
de ser comunicada para que la interface se actualice.
• Por ejemplo, si el modelo es el sistema de ficheros, y un archivo
aumenta de tamaño, hay que avisar al controlador.
25. Comunicación entre modelo y
controlador
• La comunicación modelo - controlador también se hace
mediante el sistema de delegado.
• No es tan común como la comunicación vista - controlador
26. Comunicación entre los equipos
Will Target
Did
Controlador
Will Should
Should
Did
Delegate Action
Delegate
Modelo Vista