Normandes Júnior

Instrutor da AlgaWorks. Graduado em Engenharia Elétrica pela Universidade Federal de Uberlândia e detentor das certificações LPIC-1, SCJP e SCWCD. Palestrante internacional, autor e co-autor de livros e instrutor de cursos de Java, JPA, TDD, Design Patterns, Spring, etc.

Se você não aprender Spring agora, você irá se odiar depois

Postado por em   ●   43 comentários

Tem tanta coisa para se aprender no mundo da programação que acabamos ficando perdidos. É difícil saber por onde iniciar.

Qual seria o melhor caminho? Hibernate? JSF? Padrões de projeto? GWT? CDI? Spring?

Esse tipo de dúvida não é um desprivilegio dos programadores, mas, como o assunto aqui é desenvolvimento de software em Java, então, eu posso te ajudar a fazer uma boa escolha!

Qual escolha!? Estou falando do Spring.

Vou te mostrar um excelente caminho, apresentar os motivos pelos quais você pode segui-lo sem medo e, caso você decida por essa jornada, te indicar um super material.

Continue aqui comigo para conversarmos sobre:

  • Por que aprender sobre o Spring é uma excelente escolha para sua carreira de programador?
  • O que exatamente é o Spring?
  • Como começar seus estudos?

Continue lendo

Padrão de projeto Strategy

Postado por em   ●   27 comentários

Existem códigos que são bem confusos, difíceis de ler, complicados para dar manutenção. Eu mesmo já escrevi códigos assim, mas os Design Patterns (padrões de projeto) estão aí para nos ajudar.

Através da Orientação a Objetos, podemos criar soluções bem interessantes para problemas comuns de design de código, e é isso que os Design Patterns fazem, resolvem situações com ideias inteligentes para problemas do seu dia a dia.

Nessa videoaula você vai aprender sobre um Design Pattern chamado Strategy, que te permite trocar o algoritmo de uma classe dinamicamente, ou seja, chega de if/else desnecessário para executar uma lógica baseada em um tipo!

Continue lendo

Datasources e pool de conexões

Postado por em   ●   27 comentários

Os datasources melhoram a configuração de conexão com o banco de dados. Ao invés de deixar tudo dentro da sua aplicação, externalize essas configurações e torne a manutenção mais fácil.

E ainda, com a utilização de pool de conexões, você pode melhorar o número de requisições simultâneas que sua aplicação consegue atender apenas gerenciando os recursos existentes.

Nessa vídeo aula você vai ver a migração de um projeto Java Web sem datasources para com datasources, e ainda vai aprender a configurar um pool de conexões.

Continue lendo

QCon São Paulo 2015 – Nosso resumo do evento

Postado por em   ●   24 comentários

Você participa de congressos de desenvolvimento de software? Já foi no QCon?

Se nunca foi, vale muito a pena se organizar para as próximas edições.

Nesse vídeo, eu faço um resumo do evento que ocorreu no final de Março/2015 em São Paulo.

Também fiz pequenas entrevistas com Jerome Petazzoni (Docker), Edgar Silva (WSO2), Miguel (Liferay) e Emílio Dias (Algar Telecom).

Continue lendo

Começando com Apache Maven em projetos Java

Postado por em   ●   52 comentários

Eu já vi muitas pessoas com medo do Apache Maven. É sério, mas isso passa… tem cura. :)

Quando você aprender a dominar o Maven, tenho certeza que sua vida será outra! Você vai viciar, não conseguirá iniciar um projeto sem ele.

Nessa vídeo aula você vai aprender a criar um projeto web com Maven, entender sua estrutura de pastas, analisar o pom.xml e ainda importar um projeto existente do GitHub.

Continue lendo

Atalhos e configurações para ganhar produtividade com Eclipse

Postado por em   ●   47 comentários

Será que realmente você está usando o Eclipse da melhor forma possível?

Usando as teclas de atalho e configurações certas, você vai ganhar muita agilidade e produtividade.

Vou te mostrar aqui várias teclas de atalho que utilizo no meu dia a dia e as configurações que gosto de fazer para customizar meu ambiente de desenvolvimento com o Eclipse.

Continue lendo

Calculando a média numérica com Stream do Java 8

Postado por em   ●   31 comentários

Você já percebeu a quantidade de código que é necessário para calcular a média de uma lista de valores em Java? Bem, era necessário!

Dentre as várias novidades do Java 8, o stream trouxe muitas formas diferentes e fáceis de realizar algumas operações comuns.

Neste artigo você vai aprender a fazer algo simples, calcular a média de valores armazenados em uma coleção, mas usando o stream e em uma linha de código!

Continue lendo

Entendendo o equals e hashCode

Postado por em   ●   78 comentários

Será que bugs e performance pode ter haver com os métodos equals() e hashCode()?

Entender os motivos por trás destes métodos nas classes Java fazem muita diferença para criar um software sem bugs e com melhor performance, principalmente quando se trabalha com coleções como ArrayList e HashSet.

Neste artigo você vai aprender sobre os métodos equals() e hashCode(). Entender o que são os códigos hash, como é o funcionamento de uma busca em um HashSet e o que pode acontecer quando não os implementamos corretamente.

Continue lendo

O problema do n+1

Postado por em   ●   9 comentários

Já ouvi muita gente dizer que não gosta de JPA porque gera muito select a toa. Mas depois de analisar um pouco, percebi que elas não conheciam muito bem o próprio JPA.

Neste post, vou te mostrar uma situação muito comum entre usuários de JPA que não tomam alguns cuidados na hora de gerar suas consultas, e acabam acessando demais o banco de dados.

Continue lendo