Posiblemente, si te dedicas a la programación, habrás oido hablar del Modelo Vista Controlador (MVC), ese mismo que tus profesores te insistían en usar tanto. El objetivo de este tipo de modelos es de intentar repetirse lo menos posible y de tenerlo todo organizado o sea hacer una distinción entre la lógica de toda la aplicación y presentación.
Los Fundamentos básicos del MVC son los siguientes:
- Modelo: Esta sirve como representación específica de toda la información con la cual el sistema va a trabajar. La lógica de datos nos puede llegar a asegurar la integridad de ellos y nos permitirá derivar nuevos datos. ¿Como lo hace? Pues , no permitiendonos comprar un número de unidades negativas, y también calculando si hoy puede ser el cumpleaños del usuario/a o también los totales, impuestos o importes en un sistema de venta.
- Vista: Presenta el modelo con el que va a interactuar el usuario, más conocida como interfaz.
- Controlador: El controlador responde más bien a eventos, normalmente son acciones que el usuario invoca, implica cambios en el modelo y también en la vista (interfaz).
¿Cuáles son los origenes del Modelo Vista Controlador?
Buscando un poco de información historica, podemos decir que este fue descrito por primera vez en 1979 por Trygve Reenskaug (hace ya basante tiempo, para el sector que tratamos), trabajador de Smalltalk, en unos laboratorios de gran investigación de Xerox.
La implementación del modelo fue descrita en este documento.
Frameworks MVC
Los MVC cumplen perfectamente el fin particular de cualquier frameworks, (una estructura bien definida que da soporte a un proyecto web también nos ayuda a que nuestro proyecto sea organizado y bien desarrollado).
Diagrama de Flujo de un framework MVC
Modelo Vista Controlador
1. El index.php nos inicializa el nucleo de nuestra aplicación.
2. El enrutador nos examina nuestra petición HTTP y nos ayuda a determinar que se debe de hacer.
3. Si existe, la cache nos devuelve nuestro archivo HTML sin necesidad de pasar por el sistema , ahorrandos la carga que esto nos conlleva.
4. La Seguridad, ya que antes de que se cargue el controlador se filtran los datos enviados para que estos puedan resultar fiables.
5. El controlador nos carga el modelo, librerias, helpers, plugins y todos los demás recursos necesarios para satisfacer nuestra petición.
6. Finalmente, cuando la Vista está renderizada, esta es enviada al navegador, encontes si la cache se encuentra habilitada, se almacena el resultado para la próxima ocación que la URL sea servida.
6 comentarios
hola q tal!!
estoy intentando usar esta metodologia y por eso quisiera preguntarles si los objetos q defini se manejan todos bajo una clase manejadora?
es q asi se realiza cuando trabajamos orientado a objetos pero con esta arquitectura me cuesta ver el menejo entre las clases y el modelo!!
si pudieran responder lo mas pronto posible se los agradeceria!!!
muchas gracias por su atencion!!
Cuando se trabaja orientado a objetos, se trabaja con objetos, que están definidos por sus clases, pero no hay una clase que englobe a todas ( a no ser que sigas un patrón de diseño). Luego en el modelo, usamos los objetos, pero va a parte de lo que es el MVC
Gracias Jaime muy amable de tu parte!!!
aun estoy muy nueva en esta arquitectura pues pienso implementarla con la metodologia OOSW para el desarrollo de mi aplicacion web!! no se si tengas conocimientos al respecto?
aun no logro saber si la arquitectura está contenida en esta metodologia pero el modelo funcional q define esta arquitectura me hacen pensar eso!! no se si este en lo correcto pues de esta metodologia he encontrado poca documentacion en la web!!!
Me despido, continuare trabajando y seguiria fastidiando por aqui en caso de más dudas pues es lo mas probable!!
XD
Nada, cualquier duda ya sabes, no la conocía, ahora estuve buscando algo,
Que tengas suerte 😉
Interesante artículo. En la Web he encontrado otros artículos, pero este se encuentra muy claro y concreto, además de corto. El diagrama de flujo evidencia explícitamente el funcionamiento general del patrón.
¿Quién tiene un ejemplo que siga este patrón de diseño?
Hasta pronto y gracias.
When you are in not good state and have got no money to get out from that, you will have to take the loan. Because that should help you emphatically. I take small business loan every year and feel good because of that.