Download odp - Arquitectura Mvc

Transcript
  1. 1. Materia:Sistemasdistribuidos Tema:ModeloVistaControlador(MVC)
  2. 2. Introduccion El patrn de arquitectura MVC (Modelo Vista Controlador) es un patrn que define la organizacin independiente del Modelo (Objetos de Negocio), la Vista (interfaz con el usuario u otro sistema) y el Controlador (controlador del workflow de la aplicacin). De esta forma, dividimos el sistema en tres capas donde, como explicaremos ms adelante, tenemos la encapsulacin de los datos, la interfaz o vista por otro y por ltimo la lgica interna o controlador.
  3. 3. El patrn de arquitectura "MODELO VISTA CONTROLADOR", es una filosofa de diseo de aplicaciones, compuesta por:
  4. 4. Modelo: Esta es la representacin especfica de la informacin con la cual el sistema opera. El modelo se limita a lo relativo de la vista y su controlador facilitando las presentaciones visuales complejas. Vista: Es la presentacin del Modelo, en un formato adecuado para interactuar, usualmente la interfaz de usuario. Puede acceder al Modelo pero nunca cambiar su estado. Controlador: Reacciona a la peticin del Cliente, ejecutando la accin adecuada y creando el modelo pertinente.
  5. 5. Es importante saber que el controlador interpreta las entradas del usuario (tanto teclado como el ratn), enviado el mensaje de accin al modelo y a la vista para que se proceda con los cambios que se consideren adecuados.
  6. 6. El flujo que sigue el control generalmente es el siguiente: 1. El usuario interacta con la interfaz de usuario de alguna forma (por ejemplo, el usuario pulsa un botn, enlace, etc.). 2. El controlador recibe (por parte de los objetos de la interfaz--vista) la notificacin de la accin solicitada por el usuario. El controlador gestiona el evento que llega, frecuentemente a travs de un gestor de eventos (handler) o callback.
  7. 7. 3. El controlador accede al modelo, actualizndolo, posiblemente modificndolo de forma adecuada a la accin solicitada por el usuario. Los controladores complejos estn a menudo estructurados usando un patrn de comando que encapsula las acciones y simplifica su extensin.
  8. 8. 4. El controlador delega a los objetos de la vista la tarea de desplegar la interfaz de usuario. La vista obtiene sus datos del modelo para generar la interfaz apropiada para el usuario donde se reflejan los cambios en el modelo. 5. La interfaz de usuario espera nuevas interacciones del usuario, comenzando el ciclo nuevamente....
  9. 9. Los sistemas informticos utilizan un Sistema de Gestin de Base de Datos para gestionar los datos: en lneas generales del MVC corresponde al modelo
  10. 10. Comunicacin El modelo, la vista y el controlador deben comunicarse de una manera estable los unos con los otros, de manera que sea coherente con las iteraciones que el usuario realizara. Como es lgico la comunicacin entre la vista y el controlador es bastante bsica pues estn diseados para operar juntos, pero los modelos se comunican de una manera diferente, un poco ms sutil
  11. 11. Modelo pasivo El modelo no tiene ninguna responsabilidad para comunicar los cambios a la vista porque ocurren solo por orden del usuario, por lo que esta funcin la llevara a cabo el controlador porque ser el que interprete las ordenes de este usuario debido a que solo debe comunicar que algo ha cambiado. Por esto, el modelo se encuentra en modo inconsciente y su participacin en este caso es irrisoria.
  12. 12. Unin del modelo con la vista y el controlador Como no todos los modelos pueden ser pasivos, necesitamos algo que comunique al controlador y a la vista, por lo que en este caso, si que necesitamos el modelo, ya que solo este puede llevar a cabo los cambios necesarios al estado actual en el que estos se encuentran.