El patrón MVC o Modelo-Vista-Controlador basa su robustez en que la lógica de la interfaz de usuario varía mucho más rápido que la lógica de negocio y almacenamiento, con lo que pretende separar las capas, de tal forma que un cambio en una de ellas no tenga un impacto elevado en otra. Está dividida en tres capas o niveles:
Modelo: gestiona los datos y la lógica del negocio.
- Accede a la capa de almacenamiento de datos. Independencia del modelo con el sistema de almacenamiento.
- Define las reglas de negocio, la funcionalidad del sistema.
- Registro de las vistas y controladores de la aplicación.
- Captura eventos del usuario y se los envía al sistema a través del controlador.
- Recibe mandatos del controlador y muestra información al usuario.
En la siguiente figura se aprecia la interacción entre los distintos componentes. Hay versiones o apreciaciones del MVC en las que se permite la conexión entre la Vista y el Modelo, sobre todo para operaciones muy simples que apenas tengan complejidad o impacto en la lógica del sistema. Nosotros creemos que, si es precisamente un patrón que trata de separar estas capas de negocio, es mejor que no existan tal relación, teniendo que pasar todas las peticiones a través del Controlador. Y este argumento se refuerza en las aplicaciones Web, donde la Vista suele estar distribuida y existe un altísimo grado de concurrencia en el acceso a los datos del sistema.
Por lo anterior, el flujo de control que sigue este patrón es:
- El usuario interacciona con la interfaz (Vista) y genera un evento.
- El controlador captura dicho evento y lo gestiona.
- El controlador accede al Modelo y lo actualiza.
- El controlador invoca la Vista necesaria para presentar los nuevos datos al usuario.
No hay comentarios:
Publicar un comentario