El MVC (Modelo-Vista-Controlador) es un patrón de desarrollo de aplicaciones o patrón de diseño que separa una aplicación en tres componentes principales:
- Modelo
- Vista
- Controlador
Modelo
Modelo: El modelo es una parte de la aplicación que implementa la lógica para el dominio de datos de la aplicación. Se utiliza para recuperar y almacenar el estado del modelo en una base de datos como la base de datos de SQL Server. También se utiliza para la separación de la lógica empresarial de los datos de la aplicación.
Freddie Mercury
Vista
Vista: La vista es un componente que forma la interfaz de usuario de la aplicación. Se utiliza para crear páginas web para la aplicación. Un ejemplo sería una vista de edición de una tabla de Productos que muestra cuadros de texto, listas desplegables y casillas de verificación según el estado actual de un objeto Producto.
Controlador
Controlador: El controlador es el componente que maneja la interacción del usuario. Trabaja con el modelo y selecciona la vista para representar la página web. En una aplicación MVC, la vista solo muestra información mientras que el controlador maneja y responde a las entradas y solicitudes del usuario.
La siguiente imagen representa el patrón de diseño ASP.NET MVC:
Este patrón de diseño es un marco liviano que se integra con varias características, como páginas maestras y autenticación basada en membresía. Se define en el Sistema.Web.Mvc asamblea.
css cambiando el tamaño de la imagen
Ventajas del marco ASP.NET MVC
Este enfoque proporciona las siguientes ventajas.
- Gestiona la complejidad de la aplicación dividiéndola en modelo, vista y controlador.
- No utiliza estado de vista ni formularios basados en servidor. Esto hace que el marco MVC sea ideal para desarrolladores que desean un control total sobre el comportamiento de una aplicación.
- Proporciona un mejor soporte para el desarrollo basado en pruebas.
- Es adecuado para equipos de desarrolladores y aplicaciones web a gran escala.
- Proporciona un alto grado de control al desarrollador sobre el comportamiento de la aplicación.