Spring Boot
- #Spring
Spring Boot: Tudo que você precisa saber!
Quem desenvolve aplicações utilizando Java sabe que o processo de configuração de ambientes de desenvolvimento não é lá muito rápido. Mas, com a ajuda das ferramentas certas, como no caso do Spring Boot, é possível facilitar e muito essa jornada.
Se você faz parte do time de desenvolvedores que não aguenta mais perder tempo configurando um projeto ao invés de desenvolver, de fato, então o artigo de hoje chegou na hora certa.
A partir de agora, vamos te contar tudo o que é preciso saber para simplificar o desenvolvimento de aplicações Java, sem ter que fazer inúmeras configurações e otimizações.
Nesse artigo seguiremos esta ordem para explicar o Spring Boot:
O que é Spring Boot?
Para quem ainda não ouviu falar, o Spring Boot é uma ferramenta que nasceu a partir do Spring, um framework desenvolvido para a plataforma Java baseado nos padrões de projetos, inversão de controle e injeção de dependência.
Embora o Spring framework tenha sido criado justamente com o intuito de simplificar as configurações para aplicações web, ele não atendeu 100% as expectativas do mercado ao ser lançado, já que as configurações seguiam grandes e complexas demais.
Sendo assim, um novo projeto foi acrescentado ao framework para mudar esse jogo e abstrair toda a complexidade que uma configuração completa pode trazer: o Spring Boot.
Por que usar o Spring Boot?
Como dissemos anteriormente, o maior ganho dessa ferramenta é a simplificação na hora de desenvolver aplicações Java. Mas essa é apenas a pontinha do iceberg.
Na prática, essa ferramenta oferece série de vantagens, como, por exemplo, auxiliar nas configurações iniciais necessárias para que os desenvolvedores possam, enfim, começar a codificar, além de contribuir com projetos mais ágeis e organizados.
Ou seja: com o Spring Boot, você não precisa temer ter que gastar seu tempo desenvolvendo uma aplicação do zero, já que receberá a maioria dos recursos necessários.
Para cumprir com esse propósito, o framework se baseia em quatro princípios centrais:
- Oferecer uma experiência de início de projeto rápida e direta;
- Apresentar uma visão opinativa e flexível sobre o modo como os projetos Spring devem ser configurados;
- Fornecer requisitos não funcionais pré-configurados;
- Não prover geração de código e zerar a necessidade de arquivos XML.
Os componentes-base do Spring Boot
O Spring Boot possui três componentes principais que fazem toda a “magia” apresentada acima acontecer.
Na sequência, explicaremos qual é a função de cada uma delas, para você ficar mais inteirado sobre esse universo:
Spring Boot Starter
Sua função principal é combinar as várias dependências advindas de um projeto Spring Boot em uma única dependência, retirando-se a necessidade de configuração de múltiplas dependências no Maven ou no Gradle.
Por exemplo: para criar uma aplicação Spring web “convencional”, nós precisaríamos de, pelo menos, as seguintes dependências:
- Spring Core;
- Spring Web;
- Spring Web MVC;
- Servlet API.
Adicionalmente, ainda precisaríamos definir e configurar as dependências relativas ao servidor web a ser utilizado, como o Tomcat.
Como deu para notar, esse é um processo bem trabalhoso. Sendo assim, Spring Boot utiliza os inicializadores (starters) a fim de diminuí-lo significativamente.
Se estivermos falando de uma aplicação web, por exemplo, estas dependências podem ser resumidas a apenas uma: o spring-boot-starter-web.