DESARROLLO-DE-SOFTWARESOFTWARELOGICA-DE-PROGRAMACIONPROGRAMACION

MVC - Modelo Vista Controlador

5 dic. 2017|Lectura de 2 minutos

MVC o también conocido como Modelo Vista Controlador es el concepto que vamos a conocer en este artículo y no vamos a entrar en la siguiente polémica: ¿MVC es un patrón de diseño o un patrón arquitectónico?. Este es uno de los hilos más largos que por ahora dejaremos como pendiente.

Podemos definir de una manera sencilla a MVC como un modelo que separa el software en 3 cosas: Modelo, Vista y Controlador:

  1. Modelo: Es la representación de la información que vamos a utilizar en el software, solicitudes de información, cambiar estados etc.
  2. Vista: Es lo que maneja la visualización de la información
  3. Controlador: Es el encargado de la lógica, controla las entradas y salidas de información, responde a los eventos y acciones que pasan.

Después de las definiciones que leímos podemos decir que el controlador es el que se encarga de mantener el orden en el software, tendremos reglas y acciones que debemos de ejecutar, al ser el que mantiene el orden queda claro que coordina las peticiones que van sucediendo como actualizar.

El modelo es el encargado  de las consultas, por ejemplo si tienes una tienda online y quieres ver los productos más baratos de determinada categoría, (llamémosle categoría X), entonces el modelo trae los datos de la categoría X que corresponden con el filtro que le han pasado, en este caso el precio más bajo. Si por ejemplo una web hace una paginación de los resultados al momento de dar click a otra "pagina" el modelo traerá los siguientes 10 o los 10 elementos previos.

La vista por su lado será la encargada de recibir la información que llega por el controlador y empezar a realizar el acomodo de los elementos y mostrarle al usuario, desde la posición del elementos, los colores, el diseño y la semántica dentro de una web son correspondientes a la vista que se ha definido previamente.

Ahora vamos a describir el flujo normal de una compra por internet de cuando utilizamos este modelo:

  1. El usuario abre una pagina web
  2. El usuario da click a una opción de la pagina web, un botón para comprar.
  3. La vista recibe el click, pero el controlador es el encargado de trabajar con las acciones como por ejemplo enviar o recibir información.
  4. El controlador accede al modelo para por ejemplo efectuar el pago o la compra.
  5. El controlador al tener la respuesta pasa a la vista para indicar que es lo que debe mostrar al usuario.
  6. La vista entonces trabaja con lo que recibe del controlador para mostrar la pantalla correspondiente al usuario.

Esto lo podríamos detallar tan complejo como la cadena de ADN y hasta utilizar algunos patrones para aumentar algunos puntos débiles, pero la idea principal del artículo es explicar de la manera mas sencilla el modelo MVC y espero haberlo logrado.