muitas vezes eu receber e-mails de meus leitores sobre como eles podem se tornar um full-stack Java developer, que as coisas que eles devem aprender, e qual é a área em que eles podem trabalhar para se tornar um Rockstar programador Java.
depois de respondê-los individualmente nos últimos anos, pensei em anotar alguns pontos que acho que farão de você um programador Java melhor e desenvolvedor de aplicativos full-stack.
Mas, antes de entrar no que eu gostaria de enfatizar que um programador melhor é sempre a melhor programador Java e é por isso que todas as dicas que compartilhei antes para melhorar a sua habilidade de programação e se tornar um programador melhor ainda é verdade.
se você ainda não os Leu, pode lê-lo após este artigo, eles o ajudarão a melhorar suas habilidades de programação e codificação, o que é essencial para se tornar um desenvolvedor Java melhor.
este artigo é totalmente focado na perspectiva de desenvolvimento Java e eu suponho que você já é bom em coisas essenciais como codificação, estruturas de dados e algoritmos, e conceitos de ciência da computação como redes, protocolos, Programação Orientada a Objetos, etc.
Essas dicas são igualmente úteis para o Core Java developer, quero dizer Java caras que escrevem aplicações do lado do servidor, mas não é realmente envolvidos com o desenvolvimento da web habilidades como JSP, Servlet, e JEE, assim como para o Java Web developer cujo trabalho principal é escrever aplicações para a web utilizando a tecnologia Java e quem quer se tornar um full-stack Java developer em 2020.
no entanto, deixei de fora algumas coisas da web como aprender JSF ou Servlet 4.0 por outro dia para manter esta lista curta e simples. De qualquer forma, sem mais delongas, aqui estão algumas habilidades, dicas e sugestões para se tornar um desenvolvedor Java full-stack em 2020.
- 11 habilidades para se tornar um programador Java especialista
- design e arquitetura de Software
- microsserviços
- ferramentas DevOps (Jenkins, Docker e Kubernetes)
- Spring Framework(Spring Boot)
- JUnit e Mockito
- Saiba APIs e Bibliotecas
- JVM Internals
- padrões de Design
- Kotlin
- IDE (Eclipse ou IntelliJIDEA)
- React ou Angular
- ambos são ótimos cursos para aprender Angular e reagir com Spring Boot e se tornar um desenvolvedor Java full-stack.
- Aprenda Java melhor
11 habilidades para se tornar um programador Java especialista
se você está olhando para acelerar sua carreira e se tornar um programador Java full-stack, estes são Conjunto de habilidades que você pode aprender a distinguir-se de outros programadores.
design e arquitetura de Software
design e arquitetura de Software são indiscutivelmente as fases mais importantes do processo de desenvolvimento de software. Ser capaz de ver o quadro geral e pensar sobre o problema em questão, e decidir sobre a arquitetura certa e a pilha de tecnologia para implementar seu aplicativo são habilidades cruciais para qualquer desenvolvedor de software, não apenas um desenvolvedor Java.
se você está procurando acelerar sua carreira em 2020 e deseja se tornar um desenvolvedor Java Sênior, as empresas são procuradas, sugiro que você aprenda arquitetura de Software. Se você aspira a se tornar um arquiteto de soluções, essa habilidade também o ajudará muito e a distinguir de outros desenvolvedores.
Se você precisa de um recurso para aprender coisas básicas sobre o Software de design e Arquitetura, então eu sugiro que você verifique o Aplicativo Web & Arquitetura de Software 101 curso Eductive. É um ótimo curso para aprender diferentes padrões arquitetônicos, como microsserviço, cliente-servidor e aplicativos distribuídos.
Para ser honesto com você, esse é o melhor caminho para não só sênior desenvolvedores, mas também cada desenvolvedor de software lá fora, ele irá expandir o seu processo de pensamento e você vai fazer mais confiante web developer. Há um desconto significativo no curso agora, e está disponível por apenas US $44, Preço original US $79, é um pouco caro os cursos Udemy, mas vale a pena.
por outro lado, se você gosta Educativa como uma plataforma, você também pode comprar uma assinatura por apenas us $17 por mês (50% de desconto), eu tenho uma, e eu recomendo que você obter.
microsserviços
a arquitetura está mudando constantemente e muitas empresas estão passando de aplicativos monolíticos para microsserviços.
é hora de os desenvolvedores Java aprenderem a arquitetura de microsserviços e como criar microsserviços em Java para aproveitar essa onda recente.
felizmente, o Spring framework fornece Spring Cloud e Spring Boot que simplificam muito o desenvolvimento de microsserviços em Java.
se você está procurando um curso, em seguida, mestre microsserviços com Spring Boot e Spring Cloud é um bom para começar.
e, se você preferir livros, sugiro que você verifique o Java nativo da nuvem por Josh Long, que fornece um guia abrangente para o desenvolvimento de aplicativos Java para a nuvem.
ferramentas DevOps (Jenkins, Docker e Kubernetes)
para um desenvolvedor Java moderno, o conhecimento de DevOps é essencial. Ele deve estar pelo menos familiarizado com a integração contínua e implantação contínua e como Jenkins ajuda a conseguir isso.
torna-se ainda mais importante para desenvolvedores Java seniores que muitas vezes é responsável por definir as melhores práticas de codificação e criar ambientes, criar scripts e diretrizes.
eu também sugiro que você gastar tempo e aprender mais sobre DevOps em geral e ferramentas como Docker, Ansible, Kubernetes, AWS, etc, juntamente com Maven e Jenkins.
se você precisar de alguns recursos, aprenda DevOps: CI / CD com Jenkins usando Pipelines e Docker na Udemy é provavelmente o melhor curso para começar. Você não só aprenderá sobre CI e CD, mas também sobre Maven e Jenkins em profundidade.
e, se você preferir livros, sugiro que leia o projeto Phoenix: Um romance sobre isso, DevOps e ajudando sua empresa a vencer, que fornece uma visão geral abrangente de como DevOps e automação podem transformar a fortune for business.
Spring Framework(Spring Boot)
é quase imperativo hoje em dia que um desenvolvedor Java aprenda Spring framework, pois a maioria das empresas prefere fazer desenvolvimento usando Spring frameworks como Spring MVC, Spring Boot e Spring Cloud para desenvolver um aplicativo da web, microsserviços REST APIs.
também promove práticas recomendadas como injeção de dependência e torna seu aplicativo mais testável, o que é um requisito fundamental para o software moderno.
se você é um novo desenvolvedor Java, então eu sugiro que você comece com este tutorial Java e Spring para aprender o básico desta estrutura incrível e se você já está familiarizado com o Spring, então você deve explorar Spring Boot e Spring Cloud para desenvolver a próxima geração de aplicativos Java.
se você está procurando algumas referências, então Spring Framework 5: Beginner to Guru é o melhor curso para começar.
JUnit e Mockito
se há uma coisa comum que separa um bom desenvolvedor Java de um desenvolvedor Java médio, então é a habilidade de teste de unidade.
um bom e profissional desenvolvedor Java quase sempre escreve testes de unidade para o seu código e se ele é realmente um desenvolvedor Rockstar você pode ver isso a partir de seu código e testes.
o teste também percorreu um longo caminho agora com várias ferramentas para teste de Unidade, Teste de integração e teste de automação disponíveis para desenvolvedores Java.
você pode gastar uma boa quantidade de 2020 para aprimorar sua habilidade de teste em Java, mas aqueles que são novos no Java world e no unit testing, JUnit é a melhor biblioteca para começar. A versão recente JUnit 5 é poderosa e flexível e todo desenvolvedor Java deve saber disso.
se você está procurando uma boa visão geral do JUnit e testes de unidade em Java, em seguida, JUnit e Mockito Crash Courses um perfeito para começar. Não é o mais atualizado, pois não cobre JUnit 5, mas ainda é muito útil para iniciantes.
Saiba APIs e Bibliotecas
Se você já trabalhou com grandes desenvolvedores Java você deve ter notado seu conhecimento geral do Ecossistema Java e APIs forma uma parte importante dela.Java é a linguagem de programação mais popular e madura do mundo e há toneladas de bibliotecas e APIs disponíveis para fazer quase todo o possível.
claro, não se espera que você conheça todos eles, mas você deve estar familiarizado com algumas APIs-chave como APIs de processamento JSON como Jackson e Gson, APIs de processamento XML como JAXB e Xerces, bibliotecas de teste de unidade como Mockito e JUnit, etc.
se você não os conhece, pode aprender ou pelo menos obter uma visão geral deles em 2020. Para começar, você pode verificar minha lista de 20 bibliotecas Java que todo desenvolvedor Java deve conhecer, que abrange bibliotecas de áreas-chave como análise, manipulação de bytecode, simultaneidade, coleções, etc.
JVM Internals
se você é sério sobre se tornar um desenvolvedor Rockstar Java, então você deve gastar o tempo para aprender JVM internals como o que são diferentes partes da JVM, como eles funcionam, JIT, opções JVM, coleções de lixo, e colecionadores, etc.
se você conhece bem a JVM, pode escrever aplicativos Java robustos e de alto desempenho e é isso que os desenvolvedores Java da Rockstar fazem.
como parte disso, você também deve aprender como criar um perfil em seu aplicativo Java, como encontrar gargalos de desempenho, por exemplo, quais objetos estão tirando a maioria de suas memórias e comendo CPUs.
para aprendizado estruturado, recomendo entender a série de máquinas virtuais Java no Pluralsight. É um curso muito detalhado e prático, perfeito para desenvolvedores Java curiosos.
Btw, você precisaria de uma associação Pluralsight para obter acesso a este curso, que custa cerca de US $29 por mês ou US $299 anualmente (14% de desconto).
se você não tem Pluralsight membership, eu encorajo você a obter um porque permite que você acesse seus 5.000 + cursos on-line sobre todos os tópicos mais recentes, como front-end e back-end desenvolvimento, machine learning, etc. Também inclui questionários interativos, exercícios e o material de certificação mais recente.
é mais como Netflix para desenvolvedores de Software e desde que a aprendizagem é uma parte importante do nosso trabalho, Pluralsight membership é uma ótima maneira de ficar à frente de sua concorrência.
eles também fornecem um teste gratuito de 10 dias sem qualquer compromisso, o que é uma ótima maneira de não apenas acessar este curso gratuitamente, mas também verificar a qualidade dos cursos antes de ingressar na Pluralsight.
para aqueles que preferem livros, O Guia Definitivo para o desempenho em Java de Scott Oaks é um ótimo livro para dominar os internos da JVM e a coleta de lixo.
padrões de Design
se você estiver escrevendo um aplicativo Java a partir do zero, na maioria das vezes você está escrevendo código orientado a objetos e padrões de design são experimentados e testados soluções de problemas comuns.
ao conhecê-los e incorporá-los ao seu código, você torna seu aplicativo mais flexível e fácil de mudar no futuro.
também melhora a qualidade geral do código e a documentação porque outros desenvolvedores Java também estão familiarizados com os padrões de design e eles entenderão sua solução rapidamente.
mas, não se concentre apenas na parte do Código, entenda o espírito e seja criativo. Use recursos do Java 8 como lambdas e Streams para reescrever padrões como padrões de estratégia.
se você está procurando alguns recursos para aprender padrões de design, esta lista de cursos de padrão de design é um bom lugar para começar. E, para quem gosta de livros, meus livros recomendados sobre padrões de design podem ser encontrados aqui.
Kotlin
alguns anos atrás, li um livro chamado The Well-Grounded Java Developer, que destacou a vantagem de se tornar um programador Poliglota.
ele me inspirou a aprender Scala e mais tarde eu também tentei Groovy por causa de seu uso aumentado na criação de scripts de compilação e testes de unidade.
essa experiência me ajudou muito e é por isso que encorajo os desenvolvedores Java a aprender uma nova linguagem JVM. Eu escrevi sobre isso anteriormente em 3 linguagens JVM os desenvolvedores Java devem aprender em 2020, mas se você estiver com pressa, apenas aprenda Kotlin.
é uma ótima linguagem da JetBrains, a empresa por trás do IntelliJ IDEA, e também a linguagem oficial para o desenvolvimento do Android, conforme anunciado pelo Google em 2017.
ele não só irá melhorar a sua produtividade, mas também ajudá-lo a ir para a área de Desenvolvimento Android. Se você está procurando aprender Kotlin em 2020 e procurando algum bom recurso, aqui está uma lista de cursos Kotlin para começar.
IDE (Eclipse ou IntelliJIDEA)
uma das características mais importantes de melhores desenvolvedores Java é que eles são muito bons em suas ferramentas. Eles não apenas conhecem mais ferramentas do que os desenvolvedores comuns, mas também conhecem bem suas ferramentas.
como IDEs como Eclipse, NetBeans e IntelliJ IDEA são a ferramenta mais importante para um programador Java, faz sentido gastar algum tempo para aprender melhor.
você pode aprender sobre alguns plugins que facilitam sua tarefa ou alguns atalhos de teclado que ajudam você a navegar melhor.
mesmo algumas pequenas dicas ajudam muito, porque você as usa muito mais do que pensa. Se você leva suas habilidades IDE a sério e usa o Eclipse, sugiro que verifique as técnicas e truques de depuração do Eclipse no Udemy, um curso perfeito para melhorar seu conhecimento do Eclipse.
React ou Angular
para se tornar um desenvolvedor Java full-stack, você também precisa conhecer uma estrutura front-end e não há melhor escolha do que React ou Angular.
estes dois framework JavaScript mudou completamente como você desenvolve aplicações web. Como desenvolvedor Java, você pode ter usado Servlet, JSP e jQuery no lado do cliente, mas é melhor aprender Angular ou React porque o desenvolvimento frontend moderno está usando essas estruturas.
dependendo se você escolher Angular ou reagir.js, sugiro os dois cursos a seguir para se tornar um desenvolvedor Java full-stack.
- Go Java Full Stack com Spring Boot e React
- Go Java Full Stack com Spring Boot e Angular
ambos são ótimos cursos para aprender Angular e reagir com Spring Boot e se tornar um desenvolvedor Java full-stack.
Aprenda Java melhor
esta é a coisa mais importante para um desenvolvedor Java agora. Java é constantemente atualizado e agora com cada nova versão em 6 meses, é um grande desafio manter-se atualizado. Tenho aprendido os recursos do Java 10 e conheço muitos programadores que não escreveram uma única linha de código usando recursos do Java 8, como lambdas e Stream API.
infelizmente, a maioria deles são experientes desenvolvedor Java com bons 7 a 10 anos de experiência em seu cinto. Eu entendo que em algum momento de sua carreira, o aprendizado se torna lento, mas se você não agir agora, será deixado para trás.
quase todos os trabalhos de desenvolvimento Java agora exigiam habilidades Java 8 + e se você não as tiver, seria muito difícil fazer bem e ter um bom desempenho em suas entrevistas Java.
Agora, se você tiver feito a sua mente para aprender Java, mas se preocupar sobre onde começar, eu sugiro que você verifique O Java MasterClass no Udemy, que vai te ensinar todos os conceitos básicos de Java 8 recursos e outros novos recursos introduzidos no Java 9, 10, 11 e talvez em Java 12 muito em breve.
e, se você está interessado em um curso mais avançado, o hands-on, em seguida, refatorar Java 8 Pelo Dr. Heinz Kabutz é um bom para se juntar.
isso é tudo sobre algumas das minhas dicas para se tornar um desenvolvedor Java melhor em 2020. Eu sei que é difícil seguir todas essas dicas e não estou pedindo para fazer isso, simplesmente não é prático.
você pode se concentrar em mais importante primeiro, Como Aprender Java 8 e aprender Spring Framework se você ainda não os conheceu, mas se você é bom nisso, pode escolher outros tópicos, quero dizer testes de unidade, internos da JVM e DevOps.
para começar, você precisa escolher um como aprender os recursos mais recentes do Java desde o Java 8 até o Java 13 e se comprometer com isso antes de passar para a próxima dica. Se você está procurando algumas frutas baixas, então aprender melhor o seu IDE é uma boa escolha.
você já conhece seu IDE e passar algum tempo aprendendo melhor fará de você um desenvolvedor Java mais produtivo e melhor em um tempo rápido.
tudo de bom e não se esqueça de compartilhar suas dicas que você acha que fizeram de você um desenvolvedor Java melhor.
se você tiver alguma sugestão ou feedback, então você é muito bem-vindo, todos nós aprendemos uns com os outros.
P. S. — Se você é novo na Linguagem de programação Java e está procurando um curso abrangente e estruturado para aprender Java em profundidade, também recomendo que você confira O curso completo de Masterclass Java de Tim Buchalaka. É também o curso mais atualizado e abrange novos recursos Java de lançamentos recentes.