viernes, 5 de diciembre de 2014

Las capas: tecnologías, implementaciones y frameworks

Hola jabatos:

Hasta ahora ha habido mucha palabrería y poca información que desconocierais. No os preocupeis, lo siguiente tampoco va a ser una novedad ;-)

Habíamos dicho que trabajaremos sobre 3 capas, en base al patrón de arquitectura MVC.

Voy a preparar un esquema, no exhaustivo ni cerrado, con las tecnologías de base que componen cada una de ellas. Es una aproximación personal al asunto, la cual espero os sirva de orientación.

Java SE: programación MVC

Es comprensible que, si no habéis aplicado anteriormente el modelo MVC, haya dudas sobre como implementar eso en un programa JavaSE.
  1. capa presentación-cliente
    • Swing / Awt
  2. capa persistencia
    • Java io (ficheros)
    • Hibernate
    • JPA
  3. capa negocio
    • JavaSE
Efectivamente, como vemos hay distintas librerías que implementan las distintas capas de la aplicación.

Pregunta: ¿Cómo hago para desarrollar una aplicación JavaSE e implementar el modelo MVC?
La respuesta es sencilla: hay que abrir 3 paquetes distintos en vuestra fuente, y alojar los ficheros .java que correspondan a cada capa que implementamos.



Así pues, los ficheros java donde tendremos el diseño de las pantallas de la aplicación irían en la carpeta "views". Los ficheros java que implementen JDBC (o Hibernate o JPA si accedemos a bases de datos) en la carpeta "models". Y la programación de la aplicación (el código fundamental o negocio), esos ficheros .java se guardarían en la carpeta "controls". En su momento lo veremos con más detalle.


Java EE: programación MVC

Aquí existen todo un mundo de tecnologías, frameworks, implementaciones, aplicaciones, etc. Existen dos enfoques diferentes a la hora de construir un arquitectura JavaEE: el estandar de java, y el mundo de springframework

El estandar java emplea, entre otras tecnologías:
  1. capa presentación
    • JSP 
    • JSF 2
  2. capa persistencia
    • Hibernate
    • JPA 2
  3. capa negocio
    • ManagedBeans
    • Servlets
    • EJB 3.1
    • CDI
Spring por otro lado, puede emplear diversos módulos, y dentro de esos módulos se integran las tecnologías java, implementaciones propias, módulos de terceros, etc.


Spring MVC puede ser implementado, por ejemplo, con:
  1. capa presentación
    • JSP 
    • JSF 2
  2. capa persistencia
    • Hibernate
    • JPA 2
    • MyBatis
  3. capa negocio
    • Beans: @Controller, @Repository, @Service...
O sea, que aún simplificando mucho, nos encontramos con un gran conjunto de tecnologías a manejar.


Anterior tema                                                                                         Siguiente tema

No hay comentarios:

Publicar un comentario