Skip to main content

Modelo Vista Controlador

¿Qué es MVC?

MVC (Model-View-Controller) es un patrón de diseño de software en torno a la interconexión de los tres tipos de componentes principales en un lenguaje de programación como PHP, a menudo con un fuerte enfoque en la programación orientada a objetos (POO). Estos tres tipos de componentes son vagamente llamados modelos, vistas y controladores.

El modelo es donde se guarda todo la lógica del negocio de una aplicación, la lógica del negocio puede ser cualquier cosa específica acerca de cómo una aplicación almacena los datos, o utiliza servicios de terceros con el fin de cumplir con sus necesidades. Si la aplicación debe acceder a la información en una base de datos, el código deberá estar guardado en el modelo.

La vista es donde se encontrarán todos los elementos de la interfaz de usuario de una aplicación, esta puede contener código HTML, hojas de estilo CSS y archivos Javascript. Cualquier cosa que el usuario pueda ver, es guardado en la vista, y algunas veces lo que ve el usuario actualmente es la combinación de varias vistas en la misma petición.

El controlador es el componente encargado de conectar el modelo con la vista. Los controladores aíslan la lógica del negocio de un modelo de los elementos de la interfaz de usuario de una vista y maneja la forma en la que la aplicación responde a la interacción del usuario en la vista. Los controladores son el primer punto de entrada en estos componentes, ya que la primera solicitud se pasa a un controlador, que luego instancia a los modelos y vistas requeridas para cumplir con una petición a la aplicación (2).

Ciclo de vida del MVC.

  • El usuario realiza una petición.
  • El controlador captura la petición del usuario.
  • El controlador llama al modelo.
  • El modelo interactúa con la base de datos, y retorna la información al controlador.
  • El controlador recibe la información y la envía a la vista.
  • La vista procesa la información recibida y la entrega de una manera visualmente entendible al usuario (3).

Figura 1. Ciclo de vida del MVC.

Ventajas de MVC

Las principales ventajas del uso del patrón MVC son (4):

  1. La separación del Modelo y la Vista, lo cual logra separar los datos, de su representación visual.
  2. Facilita el manejo de errores.
  3. Permite que el sistema sea escalable si es requerido.
  4. Es posible agregar múltiples representaciones de los datos.

Desventajas de MVC

Las principales desventajas del uso del patrón MVC son (4):

  1. La cantidad de archivos que se deben mantener incrementa considerablemente.
  2. La curva de aprendizaje es más alta que utilizando otros modelos.
  3. Su separación en capas, aumenta la complejidad del sistema.
Comentarios Facebook

Rodrigo Gómez

Desarrollador web en Mirrorservices.com desde hace 5 años.

One thought on “Modelo Vista Controlador

  1. Excelente explicación, actualmente utilizo cakephp y bootstrap y logró hacer aplicaciones fácilmente. Si te gusta programar, únete a nuestro equipo de freelancers en BigBangSocial.com.
    Un saludo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *