Blog de Robert Torres
Programacion Modelo Vista Controlador MVC
Que es MVC?
El modelo vista controlador o MVC es una metodología de programación que consiste en desarrollar aplicaciones web cliente servidor a través de tres capas; una capa modelo para todo lo relacionado con la interacción con la base de datos, una capa para vistas que está relacionada con el frontend y pantallas HTML y una capa controlador para el backend y la ejecución de los procesos.
Cuáles son las ventajas de trabajar con MVC?
- Te permite desarrollar sistemas robustos, su ciclo de vida es mayor y permite crear sistemas donde se requiera la interacción de muchos usuarios
- El código es más organizado y entendible. Por lo tanto es más fácil hacerle modificaciones y mantenimiento. También a su vez, previene la inconveniente inserción de código dentro de las pantallas HTML.
- Evitas repetir el mismo código en diferentes sitios, el código es mas centralizado, por ejemplo, en el caso de un query de base de datos, solo tendrías que crearlo una vez y este seria llamado por todos los módulos del sistema sin necesidad de tener que repetir en estos, la misma sentencia una y otra vez , en caso de necesitar modificarlo, modificarías la sentencia en un solo sitio y no tendrías que revisar todo el código del sistema para ver si esta se repite en otros lugares.
Modelo
Es la capa que contiene el código que interactúa con la Base de Datos, en esta capa, se desarrollan las funciones y métodos destinados a realizar los queries de tipo SELECT, INSERT, UPDATE y DELETE y el resultado es devuelto en un array o en un valor string o integer.
Es importante destacar que algunos frameworks MVC tienen su propia nomenclatura (utilizando sus propias clases y métodos) para realizar las peticiones a la base de datos lo cual permite que se reduzca significativamente la ejecución indiscriminada de sentencias SQL dentro del código backend.
Vista
Es la capa que contiene todo el código HTML, el código JavaScript y el código CSS. Generalmente, suele diseñarse, una plantilla principal con un solo header y un solo footer, y sobre ella se muestran diferentes subpantallas lo que evita repetir el header y el footer una y otra vez en todas las pantallas HTML.
Es importante indicar que esta capa solo muestra los datos, no tiene acceso a estos, ni los procesa, ni interactúa directamente con la base de datos, de esas labores se encargan tanto el modelo, como el controlador.
Controlador
Es la capa de enlace entre el modelo y la vista. Una clase controlador puede tener varios métodos, en los cuales realiza peticiones al modelo, ejecuta ciertos procesos y envía resultados a la vista.
Frameworks MVC
Los frameworks que te explicare en este sitio son:
- Laravel
- Codeigniter
- C# MVC