Arquitectura Utilizada para el Sistema.
MVC (Modelo, Vista, Controlador), El patrón MVC es una arquitectura de diseño software para separar los componentes de aplicación en tres niveles, interfaz de usuario, lógica de control y lógica de negocio.
• El modelo, que contiene la lógica de negocio de la aplicación
• La vista, que muestra al usuario la información que éste necesita.
• El controlador, que recibe e interpreta la interacción del usuario, actuando sobre modelo y vista de manera adecuada para provocar cambios de estado en la representación interna de los datos, así como en su visualización.
Responsabilidades del MVC
Modelo: Es la capa encargada de encapsular toda la lógica de negocio de nuestra aplicación. Esta capa se puede subdividir en varias:
• Lógica de negocio: Contiene clases o varias para constituir lo referente a la capa de aplicación, se encarga de atender a las peticiones de los controladores y así dar una respuesta acorde con lo recibido.
• Capa de datos: Se encarga de gestionar toda la interconexión con el SGBD, así mismo, puede contener un gestor ORM para su aprovechamiento máximo y mejor mantenimiento. Solo se comunica con la lógica de negocio.
• Helpers: Llamados “ayudantes” apoyan tanto al controlador como a la vista para hacer más livianas algunas tareas.
Controlador: Es el eje central de nuestra arquitectura, encargada de gestionar todas las peticiones, validar los inputs recibidos y dirigir cualquier petición de cualquier tipo. Solo se comunica con el modelo y responde a través de vistas.
Vista: Es la respuesta de cada controlador y lo que se le presenta al usuario final, se puede comunicar con el controlador, los “helpers” y el modelo (en algunas ocasiones).
Ejemplo de MVC
Grafico N°20: MVC
Los usuarios usan el sistema al ingresar a la URL http://www. horario_iutoms.com, luego el navegador realiza una petición online al servidor, donde la misma comprueba la existencia y devuelve la petición, además encamina al controlador adecuado.
El controlador realiza sus procesos correspondientes. Ejemplo de uno de estos es el inicio de sesión de los usuarios, como validar. Para la comprobación el controlador, solicita peticiones al modelo, que posteriormente establece conexión con la base de datos para la extracción de datos.
Una vez que se encuentran los datos correspondiente, el controlador, redirección a la vista que contiene las tareas específicas de los usuarios. Cabe destacar que cada tarea dispondrá de su acción de controlador, donde el mismo usará de ser necesario el modelo y las vista a ser usadas. Ejemplo de estos se da al momento de accionar la generación de reporte, ya que controlador crea cuantos objetos sean necesario para la construcción del reporte, es decir, puede hacer tanta peticiones al modelo cuantas sean necesarias, una vez que ha realizado todos los procesos, procede al llamado de la vista en donde se visualizaran los resultados.