¿Que es Spring Framework? . Esta es una de las preguntas más habituales que me encuentro cuando uno imparte formación para programadores junior o no tan Junior pero que vienen de una plataforma más sencilla de manejar que Java EE. De entrada cuesta mucho entender para qué sirve y qué es Spring Framework. Vamos a intentar explicarlo en este artículo.
¿Que es Spring Framework?
Spring Framework es un framework que nos facilita el trabajo y que fundamentalmente se centra en simplificar y flexibilizar la creación de objetos en nuestro programa. Esto realmente parece muy muy sencillo y uno lo ve como poco o nada útil . Vamos a ir entrando a detalle . Cuando nosotros queremos construir objetos normalmente partimos de una clase. Esta clase puede ser cualquiera y se encarga de construir los objetos que pidamos .
Normalmente las cosas no son tan sencillas ya que disponemos de muchos tipos de clases y por lo tanto muchos tipos de objetos .
Spring y sus capacidades
Spring como Framework aporta una primera capacidad muy importante y es que se trata de un framework de inversión de control . Es decir el toma el control de cuando cada uno de los objetos es creado.
Esto le permite hacer de intermediario entre el programa que usa los objetos y los objetos en sí.
Esto en un principio puede parecernos algo de poca importancia pero al ser el encargado de crear cada uno de los objetos , puede añadir funcionalidad a estos o modificar su comportamiento dinámicamente . Es decir puede de forma muy sencilla persistir un objeto en base de datos añadiendo el un comportamiento adicional.
Este comportamiento adicional se consigue a través del uso del patrón proxy en Spring . Un proxy es un objeto que hace de intermediario entre el programa y el objeto real , con la ventaja de que para el programa es totalmente transparente y el programador no se percata de que se este usando. Sin embargo aunque sea transparente añade una funcionalidad adicional que nos aporta.
Concretamente con Proxies dinámicos. De esta manera muchas de las operaciones que un desarrollador tiene que realizar con sus objetos clásicos . Spring nos permite realizar la de una forma más sencilla , directa y sobre todo transparente ya que el programador prácticamente no se da cuenta de todo lo que añade Spring dinámicamente . Si quieres aprender lo básico apuntate a mi curso gratuito de introducción a Spring Framework y pierdele el miedo a usarlo.
Curso Introducción Spring Framework