Executando verificação de segurança...
4

DÚVIDA - Aprendendo Java e Spring Boot (Porque Só Saber Node.js Não Basta!)

Estou buscando orientação para iniciar meus estudos em Java, com foco no desenvolvimento de APIs utilizando Spring Boot. Tenho experiência em Node.js com Express, mas agora quero explorar o universo do Java nesse contexto. O pouco que vi e estudei sobre Java foi na faculdade há algum tempo, então estou um pouco perdido sobre como começar. Não sei por onde iniciar, qual versão do Java escolher, ou como construir uma boa base antes de aplicar no Spring Boot. Alguém poderia me dar uma luz?

Carregando publicação patrocinada...
1
1

se você tem interesse em aprender o Java Web, só vai. Alem de ser muito performático, o Spring Boot trás muitas facilidades para o desenvolvimento web, além de ter muito mercado também. Em relação a cursos, você encontra um do Nélio Alves

1
1

Cara eu sou do mundo javascript, se você estiver querendo sair por causa de performance, faz que nem eu, fui pro mundo do baixo nivel com Rust, e foi a melhor escolha, comecei fazer modulos nodejs em Rust, e ficou muito performático, e é uma excelente linguagem de programação

1
2

da uma procurada sobre webassembly, são binários baixo nivel que é possível executar em javascript, independente se é em nodejs ou navegadores(caso for navegador ele tem que ter suporte pra isso)
uma dica de ouro: Começa com funções extremamente simples, eu comecei usando apenas pra retornar dados de Data e hora kkkkk, mas ficou muito fácil pra mim posteriormente pra executar coisas mais complexas, como executar querys em bancos, ou até mesmo pra executar servidor web, mas começa em basico, entende como funciona, porque se não você só vai se frustar.

Tmj 👍

0
1
1

Opa, então amigo, a um tempo atrás estava exatamente nessa situação.

Foi estudando Java que eu descobri o quão gostoso é o .NET hahahahaha.
Com certeza foi a transição mais delicinha que eu já fiz.

No trabalho estou usando o VB Net e atualmente estou aprendendo o Next com o nosso amigo Filipe Deschamps.

0

Só uma pergunta: PRA QUÊ??

O rei da web é o PHP (Principalmente em Laravel), ele foi desenvolvido justamente para isso e faz seu papel muito bem. Pra quê inventar de usar Java na web se já tem o PHP que foi feito pra isso.

Você só irá dificultar o seu aprendizado, Java é cheio de nove horas, sintaxe complicada, coisas pra ficar instalando... Não perde tempo, vai no Laravel 11 que é sucesso. Você terá muita coisa pronta, facilidades com o CLI Artisan, uma comunidade enorme em Stack Overflow, Discord (Inclusive brasileiras)... Não vai ficar buscando hospedagens que se aceitem Java (Todas aceitam PHP).

Java e web na mesma frase, na minha opinião, não combinam.

2

Trabalho em uma empresa que usa springboot no backend e com 2gb de ram e 1 nucleo na AWS a gente mantem 300 clientes utilizando um ERP web com uns 30% de uso no maximo, apenas picos quando vai gerar um relatorio ou algo assim. O mundo java com spring ja evoluiu bastante, e eu chuto que é muito mais performatico e tranquilo do que PHP.

2

PHP + Laravel = Stack perfeita?

Como tudo na computação: depende.

Adoro essa stack, é minha principal há 5 anos. Mas ela peca MUITO em desempenho.

O Laravel tem uma estrutura pesadíssima, é um framework construído em cima de outro framework. Com isso ele carrega diversas classes que deixa a execução extremamente lenta.

Em questão de desenvolvimento considero um paraíso, tudo que preciso está lá. Tenho uma produtividade absurda e sempre prefiro usar ele em projetos de pouco acesso de tamanho pequeno e médio.

Caso seu projeto tenha uma quantidade relevante de acessos ou uns serviços mais pesados ele peca MUITO.

Meu caso de uso

Desenvolvi um serviço que diariamente sincroniza o meu banco de dados com uma API. Esse serviço fica horas na sua capacidade máxima, Limitado a 3 operações por segundo.

Cada operação consistem em:

  • Consultar um endpoint PHP
  • Popular os dados em um modelo
  • Salvar no banco de dados

Ps: Uso o próprio banco de dados como driver da fila

Em horários de pico o banco de dados informa que estão sendo feitas quase 200 Querys por segundo.

Como um serviço de executa 3 operações chega a quase 200 querys? Overhead causada pelo RateLimiter.

Outro fator limitante: Cada requisição HTTP demora 250ms de tempo de resposta em média. Quantos workers preciso para manter a velocidade máxima?

20 Workers.

Sim, preciso alocar quase 2GB de RAM distribuídos em 20 workers para sustentar uma integração de 3 Jobs/Segundo

Nenhuma stack é bala de prata

Frameworks, Linguagens e ferramentas estão aí para resolver problemas. Temos que usar cada uma na hora e finalidade certas.

Não devemos nos prender à tecnologias, devemos aprender a programar

-1
1

Para esse caso não vale a pena, o custo adicional da minha hora pra desenvolver esse serviço em rust paga, no mínimo, 1 ano inteiro de servidor extra hahaha

Mas se fosse um serviço escalável sim, iria desenvolver em uma linguagem mais performática.

0