El Patrón Modelo-Vista-Controlador te permite separar la interfaz de usuario , los datos y la lógica de control en tres componentes distintos.
El modelo es el responsable del estado de la aplicación maneja los datos ( también opera sobre ellos).
La vista es lo que conocemos como interfaz de usuario, es la interfaz de interacción con el usuario
El controlador , no es la vista que decide que hacer con el input del usuario , sino el controlador. Como la aplicación responde al input del usuario.
Comunicación entre estos tres elementos:
1.El usuario clicka un botón , interacción con la vista.
2.La vista le dice al controlador : ” Eiii se ha producido este evento” para que el controlador decida como manejarlo.
3.El controlador basándose en como maneja el evento , cambia el modelo.
4.El modelo dice “Eiii he cambiado”" ( informa a la vista) .
5. Vista lee el modelo y se actualiza.
Como vemos todo esta separado , si queremos cambiar algo , solo cambiamos la parte específica. Un cambio en un lado solo afecta a un lado.
Las consecuencias de la aplicación del Patrón MVC son:
• Reutilización de componentes del modelo, mismos datos diferentes vistas , “aplicaciones”.
• Fácil soporte para nuevos tipos de clientes, dependiendo del cliente cambiamos la interfaz y el acceso a los datos.
• Incremento de la complejidad del diseño, por ejemplo el uso de un controlador nos permite realizar varias operaciones distintas sin liarnos.
Así sin un ejemplo práctico queda un poco abstracto , la idea final es hacer mi web en flash utilizando este patrón.