MVC (Modelo-Vista-Controlador), en palabras simples, es la forma(Patron de Diseño) que utilizamos los programadores para implementar nuestras aplicaciones, ademas permite separar nuestra aplicacion en un modelo, una vista y con controlador. este patron fue introducido por primera vez en el lenguaje “Smalltalk”.
3 tipos de entidades, cada una especialida en su tarea.
Modelo:
Es el encargo de administrar la logica de tu aplicacion. tiene como finalidad servir de abstracccion de algun proceso en el mundo real, ademas tiene acceso a nuestra Base de Datos, agregando q tiene las funciones que controlan la integridad del sistema.
Vista
Sencillamente es la representacion visual del modelo. Es la encargada de representar los componentes visuales en la pantalla, Esta asociada a un Modelo, esto le permite que al momento de cambiar el Modelo, la vista redibujara la parte efectada para reflejar los cambios.
Controlador
Es el escuchador a los eventos que genere el usuario, es decir es el que permite que interactuen el usuario con el sistema. Interpreta los eventos (la entradas) atravez del teclado y/o raton.
Por que usar MVC?
Porque fue diseñada para reducir el esfuerzo al momento de programar. Ademas porque permite una clara separación entre los componentes de un programa; lo cual nos permite implementarlos por separado.
Permite el trabajo en equipo.
Java implementa MVC?
Con decir, que la mayoria de los componentes SWING, han tomado como patron de Disenio a MVC , esto es una gran ventaja para los programadores, porque nos permite implementar nuestro PROPIO modelo de datos para cada componente swing.
Sin embargo es bueno recordar que El modelo original MVC prescribía un alto acoplamiento entre controladores y vistas.
Por que es recomendable tener nuestro Propio Modelo de Datos para nuestros Compoonentes Swing?
Swing se basa en un modelo MVC, donde la mayor parte de componentes de interfaz (JTable, JList, JComboBox, etc.) tienen un modelo de datos por defecto. Si nos limitamos a usar el modelo propio estaremos utilizando los modelos por defecto de Swing. y obviamente estos modelos utilizan la clase java.util.Vector para el almacenamiento de los datos lo que provocará que nuestros interfaces pierdan ahorro de recursos.
Por otro lado, mvc nos permite utilzar de la forma que queramos a cualquier componente swing con tan solo implementar nuestro propio modelo. es decir nos ofrece la posibilidad de trabajar con componentes más eficientes .
Espero haya quedado la idea general, de implementar nuestras aplicaciones tomando como patron de diseño a MVC.
No hay comentarios:
Publicar un comentario