Que es el modelo - vista - controlador
felipe56526 de Agosto de 2014
542 Palabras (3 Páginas)263 Visitas
Que es el modelo - vista - controlador
Modelo–vista–controlador
Un diagrama sencillo que muestra la relación entre el modelo, la vista y el controlador. Nota: las líneas sólidas indican una asociación directa, y las punteadas una indirecta (por ejemplo, patrón Observer).
El modelo–vista–controlador (MVC) es un patrón de arquitectura de software que separa los datos y la lógica de negocio de una aplicación de la interfaz de usuario y el módulo encargado de gestionar los eventos y las comunicaciones. Para ello MVC propone la construcción de tres componentes distintos que son el modelo, la vista y el controlador, es decir, por un lado define componentes para la representación de la información, y por otro lado para la interacción del usuario . Este patrón de arquitectura de software se basa en las ideas de reutilización de código y la separación de conceptos, características que buscan facilitar la tarea de desarrollo de aplicaciones y su posterior mantenimiento.
Como se aplica el modelo vista controlador
El patrón MVC
Historia: Descrito por primera vez en 1979 para Smalltalk
• http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html
Utilizado en múltiples frameworks
• Java Swing
• Java Enterprise Edition (J2EE)
• XForms (Formato XML estándar del W3C para la especificación de un modelo de proceso de datos XML e interfaces de usuario como formularios web)
• GTK+ (escrito en C, toolkit creado por Gnome para construir aplicaciones gráficas, inicialmente para el sistema X Window)
• ASP.NET MVC Framework (Microsoft)
• Google Web Toolkit (GWT, para crear aplicaciones Ajax con Java)
• Apache Struts (framework para aplicaciones web J2EE)
• Ruby on Rails (framework para aplicaciones web con Ruby)
• Etc., etc., etc.
Modelo-Vista-Controlador
Un modelo
Varias vistas
Varios controladores
Las vistas y los controladores suelen estar muy relacionados
• Los controladores tratan los eventos que se producen en la interfaz gráfica (vista)
Esta separación de aspectos de una aplicación da mucha flexibilidad al desarrollador
Flujo de control
1. El usuario realiza una acción en la interfaz
2. El controlador trata el evento de entrada
Previamente se ha registrado
3. El controlador notifica al modelo la acción del usuario, lo que puede implicar un cambio del estado del modelo (si no es una mera consulta)
4. Se genera una nueva vista. La vista toma los datos del modelo
El modelo no tiene conocimiento directo de la vista
5. La interfaz de usuario espera otra interacción del usuario, que comenzará otro nuevo ciclo
MVC en aplicaciones web
Vista: la página HTML
Controlador: código que obtiene datos dinámicamente y genera el contenido HTML
Modelo: la información almacenada en una base de datos o en XML junto con las reglas de negocio que transforman esa información (teniendo en cuenta las acciones de los usuarios)
Descripción general
Modelo: El modelo lo realiza el desarrollador
Vista: Conjunto de objetos de clases que heredan de java.awt.Component
Controlador: El controlador es el thread de tratamiento de eventos, que captura y propaga los eventos a la vista y al modelo Clases de tratamiento de los eventos (a veces como clases anónimas) que implementan interfaces de tipo EventListener (ActionListener, MouseListener, WindowListener, etc.)
Ejemplo de una clase para el modelo vista controlador
class clsDatos{
...