viernes, 6 de diciembre de 2019

¿Que es Spring Boot?


Spring Boot no es mas que un framework para desarrollar aplicaciones Java de manera rápida

















Cuando desarrollamos aplicaciones Java usando Spring Framework, usualmente debemos realizar ciertas configuraciones previas en  nuestro proyecto para poder comenzar a desarrollar nuestra idea de negocio o programar el problema que intentamos resolver,  algunas de estas configuraciones pueden ser las siguientes:
  1. Crear la estructura de nuestro proyecto, (usualmente realizamos esta tarea usando Maven, Gradle o incluso manualmente), la estructura de nuestro proyecto es muy importante ya que nos define cosas tales como: estructura de carpetas y archivos, archivos de configuraciones, etc.
  2. Configuración de dependencias (jars o librerias externas que usa nuestro proyecto), 
  3. Si tu aplicación es una aplicación web, debes habilitar Spring MVC y Servlet API, por lo tanto, es necesario incluir las dependencias, adicionalmente debes configurar el archivo web.xml y agregar algún servidor de aplicaciones (Tomcat, Jetty, Undertow) entre otras configuraciones necesarias.
  4. Finalmente configurar y desarrollar algunos controladores (Controllers) en tu aplicación los cuales son los encargados de manejar todas las peticiones HTTP, este tipo de configuraciones puede variar  dependiendo de la complejidad de tu aplicación.
Si te detienes a pensar por un momento, este tipo de configuraciones son muy comunes para la mayoría de aplicaciones Java, por lo que nos preguntamos: ¿por qué no proveerlas por defecto en una herramienta?. Adicionalmente para nadie es un secreto que este tipo de configuraciones pueden llegar a ser demasiado tediosas, obligándote a gastar tiempo realizando estas configuraciones una y otra vez, cada que necesites comenzar un proyecto nuevo, tiempo que puedes invertir desarrollando la idea de negocio propia de tu aplicación.

Es en este punto donde Spring boot es de gran ayuda realizando todas esas configuraciones que son comunes para la mayoría de aplicaciones java, Spring boot ofrece muchas otras funcionalidades para acelerar nuestro desarrollo, tales como: servidor de aplicaciones embebido, ejecución standalone, selección de las dependencias correctas una vez decidimos que módulos vamos a agregar en nuestro proyecto, una CLI o interfaz de línea de comandos entre otras.

Así, La magia de Spring boot se base en 4 pilares fundamentales lo cuales podemos utilizar en nuestro día a día como desarrolladores:

1. Configuración automática:
Spring boot puede proveernos configuraciones automáticas las cuales son comunes para la mayoría de aplicaciones que usan Spring Framework
2.    Inicializador de dependencias
Spring boot se encarga de elegir las dependencias correctas con base en las funcionalidades que desees utilizar en tu proyecto
3.    CLI o Interfaz de línea de comandos
Aunque esta es una funcionalidad opcional, Spring boot ofrece una interfaz de línea de comandos para ejecutar código o realizar configuraciones de manera rápida
4.    Actuator
Con esta herramienta podemos dar una mirada al interior de nuestra aplicación y saber que esta pasando dentro de nuestra aplicación (Profiler).

En conclusión, Spring boot nos facilita la vida al proveernos ciertas configuraciones de manera automática, es una herramienta que debemos de tener en cuenta a la hora de crear nuestros proyectos, Spring boot no resuelve todo, todavía hay muchas cosas que debemos hacer de manera manual dependiendo de la complejidad de nuestro proyecto pero creo que es una herramienta imprescindible en el mundo del desarrollo de Spring Framework.

Referencias:
·      Spring boot in Action (https://www.manning.com/books/spring-boot-in-action)


No hay comentarios.:

Publicar un comentario