You are on page 1of 4

MODELO VISTA-CONTROLADOR

Modelo Vista Controlador (MVC) es un patrón de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos. El patrón MVC se ve frecuentemente en aplicaciones web, donde la vista es la página HTML y el código que provee de datos dinámicos a la página, el modelo es el Sistema de Gestión de Base de Datos y la Lógica de negocio y el controlador es el responsable de recibir los eventos de entrada desde la vista ¿Cuál es la finalidad del Modelo Vista Controlador? La finalidad del modelo es mejorar la reusabilidad por medio del desacople entre la vista y el modelo. Los elementos del patrón son los siguientes: El modelo es el responsable de: Acceder a la capa de almacenamiento de datos. Lo ideal es que el modelo sea independiente del sistema de almacenamiento. Define las reglas de negocio (la funcionalidad del sistema). Un ejemplo de regla puede ser: “Si la mercancía pedida no está en el almacén, consultar el tiempo de entrega estándar del proveedor”. Lleva un registro de las vistas y controladores del sistema. Si estamos ante un modelo activo, notificará a las vistas los cambios que en los datos pueda producir un agente externo (por ejemplo, un fichero bath que actualiza los datos, un temporizador que desencadena una inserción, etc). El controlador es el responsable de: Recibe los eventos de entrada (un clic, un cambio en un campo de texto, etc.). Contiene reglas de gestión de eventos, del tipo “SI Evento Z, entonces Acción W”. Estas acciones pueden suponer peticiones al modelo o a las vistas. Una de estas peticiones a las vistas puede ser una llamada al método “Actualizar()”. Una petición al modelo puede ser “Obtener_tiempo_de_entrega( nueva_orden_de_venta )”.

el flujo que sigue el control generalmente es el siguiente: El usuario interactúa con la interfaz de usuario de alguna forma (por ejemplo. ¿Qué Ventajas trae utilizar el MVC? Es posible tener diferentes vistas para un mismo modelo (eg. Tienen un registro de su controlador asociado (normalmente porque además lo instancia). el usuario pulsa un botón. representación de un conjunto de datos como una tabla o como un diagrama de barras). el controlador actualiza el . frecuentemente a través de un gestor de eventos (handler) o callback. en unos laboratorios de gran investigación de Xerox. Proporciona un mecanismo de configuración a componentes complejos muchos más tratable que el puramente basado en eventos (el modelo puede verse como una representación estructurada del estado de la interacción). posiblemente modificándolo de forma adecuada a la acción solicitada por el usuario (por ejemplo.Las vistas son responsables de: Recibir datos del modelo y los muestra al usuario. para que sea invocado por el controlador o por el modelo (cuando es un modelo activo que informa de los cambios en los datos producidos por otros agentes). puede decirse que este fue descrito por primera vez en 1979 por Trygve Reenskaug. trabajador de Smalltalk. ¿Cuáles son los orígenes del Modelo Vista Controlador? Basado en información histórica. El controlador gestiona el evento que llega. El controlador accede al modelo. enlace) El controlador recibe (por parte de los objetos de la interfaz-vista) la notificación de la acción solicitada por el usuario. Flujo que sigue el control en una implementación general de un MVC Aunque se pueden encontrar diferentes implementaciones de MVC. Pueden dar el servicio de “Actualización()”. actualizándolo. Es posible construir nuevas vistas sin necesidad de modificar el modelo subyacente.

Incluso de actualizar la versión si decidimos crear una nueva estructura de la base de datos. . No obstante. estos métodos se encargarán de crearla. comenzando el ciclo nuevamente. SQL es el lenguaje de programación más utilizado para bases de datos. esta clase tiene dos métodos getReadableDatabase() ygetWritableDatabase() que abren la base de datos en modo solo lectura o lectura y escritura. si deseas hacer cosas más complicadas te recomiendo que consultes alguno de los muchos manuales que se han escrito sobre el tema. No obstante. Como verás en este apartado. almacenar tu información en una base de datos no es mucho más complejo que almacenarlos en un fichero. Para manipular una base de datos en Android usaremos la clase SQLiteOpenHelper que nos facilita tanto la creación de la base de datos. produce un listado del contenido del carro de la compra La interfaz de usuario espera nuevas interacciones del usuario. El controlador delega a los objetos de la vista la tarea de desplegar la interfaz de usuario. En caso de todavía no existir la base de datos. como el trabajar con futuras versiones de esta base de datos. No resulta complejo entender los ejemplos que se mostrarán en este libro. Para crear un descendiente de esta clase hay que implementar los métodos onCreate(). Hasta hace muy poco resultaba muy costoso y complejo incorporar bases de datos a nuestras aplicaciones. Android incorpora la librería SQLite que nos permitirá utilizar bases de datos mediante el lenguaje SQL. Los controladores complejos están a menudo estructurados usando un patrón de comando que encapsula las acciones y simplifica su extensión. Además. y onUpgrade() y opcionalmente onOpen().carro de la compra del usuario). y además resulta mucho más potente. La vista obtiene sus datos del modelo para generar la interfaz apropiada para el usuario donde se refleja los cambios en el modelo (por ejemplo. de una forma sencilla y utilizando muy pocos recursos del sistema. La gran ventaja de utilizar esta clase es que ella se preocupará de abrir la base de datos si existe o de crearla si no existe. BASE DATOS-BD (ANDROID) Las bases de datos son una herramienta de gran potencia en la creación de aplicaciones informáticas.

php/tutoriales-android/42-unidad-9-almacenamiento-dedatos/309-bases-de-datos http://www.com/modelo-vista-controlador-definicion-y-caracteristicas .androidcurso.comusoft.XML-ALMACENAMIENTO DE DATOS BIBLIOGRAFÍA http://www.com/index.