comprei um livro de java EE a uns 6 meses…comecei e tive algumas dificuldades por ser o meu primeiro contato com java Web…blz…agora preciso retomar os estudos, mas, andei olhando algumas coisas sobre o tal Spring e fiquei com a seguinte dúvida…é preciso eu passar pelo Java EE para ir para o Spring?
Acho este um conselho precipitado. Tudo bem que o JEE tem algumas complexidades desnecessarias, mas ao mesmo tempo vc não precisa ter conhecimento de tooooda a especificação. Aqui em Brasília, por exemplo, a maioria dos projetos corporativos que tenho atuado tem como base arquitetural a plataforma Java EE.
Existem outras alternativas mais “amigáveis” e com o mesmo poder de fogo? Talvez sim! A stack do Spring está aí pra nos mostrar isso. No entanto, acho que vale ressaltar que muitas característias de serviços Spring estão presentes no JavaEE. Exemplo disto é a API de injeção de dependências traduzida no CDI, os Components, Repositories, Services que podem ser comparados aos EJB’s, processamento batch, entre outros.
Qual o real motivo para se passar longe do JEE?
Ah, além do mais, se o aspira almejar certificações Oracle mais complexas, a base de estudo é a JEE.
Desisti de tirar certificações Java justamente pelo fato da JEE estar desatualizada com o mercado. Certifacao de Business Component (antiga SCBCD), estudar EJB? Pára né, rs. Até para certifacao de webservices… cai mais arquitetura SOAP do que REST… sem palavras, tirando a de JSF…
Só a de Programmer ja estou satisfeito mesmo. Ou no maximo (só que nao me interesso tb) a de Web Component, por causa de servlets e http… mas cai mais JSP, JSTL tb… coisas que hoje em dia, Java ta servindo mto mais pra backend, do que front, provendo apis REST, ai um framework JS (React, Angular, Vue, etc) consumindo essas APIs
As especificações Java são quase tudo assim… Muitas coisas do JPA, veio por o Hibernate fez fantasticamente, Igual o CDI que vc disse para injecao, a api de datas do Java 8, que veio do JodaTime, e por ai vai.
PS: não estou julgando, nem criticando a JEE… eles tem que pensar MUITO antes de lancar algo, para nao lancar alguma coisa e depois nao poder voltar atras por causa da incompatibilidade. Por isso é tão demorada e por isso que eles copiam muitas ideias de algo que ja viram que funciona bem. Só não vejo motivo de seguir JEE a risca… senao seu sistema vai ficar pra trás…
Em que contexto afirma isso?
Em termos de mercado, ao menos aqui em Curitiba, desde sempre houve muita coisa em JEE. Do finado HSBC (que não usava a estrutura do JEE pura, mas usava), até a Telefônica (antiga GVT), sem falar em inúmeros outros cases.
Se é olhando do viés arquitetônico, JEE, bem ou mal, entrega tanto para a monolítica quanto para as baseadas em microserviços.
SOAP? Jax-WS? Se vai trabalhar com SOA/OSB ou algo assim, muito provavelmente vai utilizar os famigerados WSDLs e XSDs e etc, logo, ter APIs que atenda a tais requisitos é bacana. Entendo que a partir da versão 12c da Oracle SOA Suíte é possível utilizar REST, mas, há tempos eu entendo que você tem inúmeras opções para brincar com inovações (NodeJS está aí para isso, não é mesmo?).
Agora, se a questão é evolução, sim, o Java é muito amarrado e, bem ou mal, isso é causado (ao menos em partes) pela forma como as JSR são gerenciadas.
Veja, quanto tempo foi preciso para que uma versão decente de ORM fosse desenvolvida? E IoC e DI então? Se é este o motivo que te leva a afirmar “afaste-se”, então eu concordo.
O JEE nasceu e cresceu muito. Acontece que decisões erradas e o engessamento de depender dos Application Servers, levou ao desenvolvimento de alternativas, das quais, o Spring Framework se tornou muito mais célebre.
O mote era poder rodar aplicações JEE like em um ambiente como o Apache Tomcat. Mas a coisa foi crescendo e, atualmente, podemos dizer que o Spring é maior que o JEE sim.
Agora, é inegável que a ascensão de coisas como o Spring e o Hibernate foram de suma importância para a evolução do JEE. Sem estes frameworks, o JEE ainda não teria um JPA e nem o CDI (sem falar em vários outros elementos bacanas)…
a impressão que se tem é que o Spring está sempre à frente do JEE.