No has iniciado sesión
Conectar al sistema | Registrar usuario
Categorías Articulo
 
6 votos
MVC - Modelo Vista Controlador
 
El patrón de diseño Modelo Vista Controlador o MVC describe una forma, muy utilizada en el Web, de organizar el código de una aplicación separando los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos.
Modelo - Componente encargado del acceso a datos.
Vista - Define la interfaz de usuario, HTML+CSS... enviados en el navegador
Controlador - Responde a eventos y modifica la vista y el modelo

La principal ventaja de esta separación reside en la facilidad para realizar cambios en la aplicación puesto que:
1 Cuando realizamos un cambio de bases de datos, programación o interfaz de usuario solo tocaremos uno de los componentes
2 Podemos modificar uno de los componentes sin conocer cómo funcionan los otros

ArribaTabla de contenido

ArribaImplementaciones del patrón MVC

Existen varias implementaciones del patrón Modelo Vista Controlador que nos permiten realizar páginas web, veamos los principales:
Para PHP: CakePHP
Para Ruby: RubyOnRails
Para Java: Struts
Para .net: MonoRail

Arriba¿Cómo seguir este modelo?

Si no nos convence ninguna de las soluciones anteriores, podemos realizar una página web siguiendo el MVC desarrollando nuestro propio framework utilizando un lenguaje de programación de servidor, un componente de plantillas y otro de acceso a datos.

En este caso, utilizaríamos un lenguaje de servidor cómo PHP, .Net... para:
1 Definir el comportamiento de nuestras páginas
2 Cargar una plantilla para cada página

Podemos utilizar sistemas como Smarty o crear uno propio como este sistema de plantillas en PHP5 y XML para cargar la plantilla. Esta será la vista de nuestra aplicación y nos permitirá modificar la interfaz sin tener que conocer más que HTML y CSS en su caso...
3 Llamar a las funciones de acceso a datos
Para acceder a los datos ( bases de datos, ficheros... ) usaremos un componente separado tipo DAO, esto nos permitirá adaptar la aplicación a cualquier cambio en la estructura de datos sin tener que tocar nada más que el modelo.
 
 
¿? Resolver dudas
Si tienes problemas o dudas con el contenido del artículo no dudes a preguntar en los foros de Otros de Programación Web indicando el artículo al que te refieres.
 
Comentarios
28/04/07 Comentario 621
Es bueno usar esta filosofía de trabajo para evitar jaquecas.

En algunos sitios he visto que también se le puede llamar 3-Tier architecture (o Arquitectura de triple capa), llamandose Data Tier el modelo, Presentation Tier la vista y Application Tier, Logic Tier o Business Logic Tier el controlador.

Si les interesa el tema hay mucha más información en:
http://es.wikipedia.org/wiki/Modelo_Vista_Controlador
http://en.wikipedia.org/wiki/Multitier_architecture
11/12/09 Comentario 1405
Yo prefiero el MTV propuesto por Django.
 
Redes Sociales
Programación Webon

Compartir en Google Plus