Posts tagged ‘Spring’

¿Qué es Spring? Explicación básica y descripción

Hola a todos. Esta es una pequeña entrada para presentar el framework Spring, desarrollo de código libre de la empresa Spring Sources.

Lo primero que hay que entender de Spring, es que es un conjunto de módulos, de los cuales podemos utilizar los que queramos. Digo esto porque parece que hay bastante confusión comparando Spring con Struts por ejemplo, cuando esa comparación sería con el módulo Spring MVC.

Spring

El núcleo de Spring, su “core”, realiza lo que se llama inversión de control, más concretamente inyección de dependencias. Básicamente lo que significa esto es que la creación de nuestros objetos las lleva a cabo un contenedor externo inyectándolos a otros objetos que dependan de los primeros. Además esto se logra sin que nuestro código tenga dependencia alguna con Spring, salvo la clase que cree el contenedor Spring.

La primera ventaja que tenemos es que desaparece de nuestro código toda la creación de objetos y paso de dependencias, con lo que tendremos un código más limpio. Eso sí, aparece un xml (habitualmente) que refleja los objetos a crear y las relaciones entre ellos.

Pero en mi opinión la principal ventaja de utilizar Spring, es que nos anima a que hagamos una programación basada en interfaces, con lo que se logra el máximo desacoplamiento entre clases. Nuestro objeto A depende del interface IB únicamente. La implementación de IB que voy a utilizar en A la defino en el xml, siendo extremadamente sencillo cambiar dicha implementación, sin tocar nada del código.

umlspring1

Algunos de los otros módulos que Spring nos proporciona son:

  • AOP o Programación Orientada a Aspectos, que merece una entrada para ella sola.
  • Acceso a base de datos.
  • Transacciones.
  • Acceso a recursos (internacionalización por ejemplo).
  • Validación.
  • MVC, es decir, Modelo Vista Controlador.

Seguro que en este blog en un futuro aparecen ejemplos de más de uno de ellos.

20 noviembre 2008 at 5:49 pm 10 comentarios


Mi perfil

View Miguel Orbegozo's profile on LinkedIn

Feedjit

Feeds

Otros…

BlogESfera Directorio de Blogs Hispanos - Agrega tu Blog

Bitacoras.com

Add to Technorati Favorites