Moodle

Solo disponible en BuenasTareas
  • Páginas : 16 (3789 palabras )
  • Descarga(s) : 0
  • Publicado : 3 de noviembre de 2010
Leer documento completo
Vista previa del texto
Arquitectura J2EE - Patrón MVC
El concepto de reutilización del software, no se ciñe solo a usar las mismas funciones, clases, o métodos para resolver problemas similares, sino que se extiende a otras fases del desarrollo del software como puede ser, como es el caso que nos ocupa en este post, la arquitectura.

En la reutilización a nivel de arquitectura interna, adquieren especial relevancialos patrones de diseño. En concreto, hoy quiero hablar del Patrón Modelo-Vista-Controlador. El MVC es un patrón muy usado en distintos tipos de aplicativos.

He escuchado comentarios de programadores, en los que asocian este patrón a J2EE, dado que hay varios frameworks que lo implementan, como por ejemplo Spring MVC, pero MVC, como el resto de patrones, no es exclusivo de una tecnología. Dehecho en las primeras iteraciones de diseño, abstraemos la arquitectura de la tecnología de programación. En Soltel hemos adoptado este patrón en multitud de desarrollos de muy distinta naturaleza: movilidad J2ME, movilidad .NET, C#, y por supuesto en aplicaciones J2EE.

En nuestro día a día, no desarrollamos aplicaciones críticas, donde estaría prohibido usar este tipo de patrones. De hecho dudoque para una aplicación crítica se escoja Java como solución tecnológica.

Para aplicaciones J2EE, la mayoría de las veces, la arquitectura MVC satisface las necesidades de la aplicación. De hecho, creo que se ha constituido como estándar de facto, y si trabajas en proyectos para la administración pública en Andalucía, casi un estándar de iure, ya que en MADEJA (Marco de Desarrollo de la Junta deAndalucía), se recomienda su uso.

A grandes rasgos, el patrón indica que se deben establecer tres componentes o capas en la arquitectura, y que cada una de estas, solo se comunica con la adyacente.
[pic]

- Capa Vista: Responsable de la lógica de presentación y captura de datos de nuestro sistema al exterior y viceversa.
- Capa de Control: Responsable de la lógica operacional de negocio.Traslada las peticiones de la Capa Vista a la Capa de Modelo, y según la respuesta, la redirecciona o no a la Capa Vista. Carga objetos y opera con ellos.
- Capa Modelo: Básicamente contiene la lógica de negocio real, el dominio de la aplicación (VO: Value Object) con sus clases get y set, y los objetos de acceso a datos (DAO) que implementen las operaciones CRUD (Create, Read, Update, Delete).Esto a grandes rasgos, ya que dependiendo de la aplicación, además de los patrones VO y DAO, se puede incorporar un Façade. Esta capa interactúa o bien directamente (por ejemplo, mediante jdbc) o a través de la capa de persistencia, con servidores de bases de datos, LDAP...

Muchos de los frameworks J2EE ya implementan los mecanismos de comunicación entre capas siguiendo MVC.

[pic]
[pic]
UsarJSF o Struts para la Capa Vista, Spring para la Capa Controlador, y JPA con Hibernate para la Capa Modelo sería una de las soluciones a la arquitectura de una aplicación J2EE.

Ventajas del patrón
MVC nos aporta una construcción de software muy mantenible, en la que se pueden localizar de forma ágil los errores. Supone un diseño modular, y muy poco acoplado, favoreciendo la reutilización.
Porejemplo, podemos realizar una interfaz gráfica de escritorio, y una web, que compartirían las capas Controlador y Modelo, y solo trataríamos como desarrollos distintos las dos capas Vista.

Frameworks Modelo Vista Controlador (MVC)

lunes 29 de marzo de 2010

El Modelo Vista Controlador (MVC) es un estilo de arquitectura de software que separa los datos de una aplicación, la interfaz deusuario, 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.
• Modelo: Esta es la...
tracking img