sábado, 11 de março de 2006

Java Puzzlers, Traps, Pitfalls and Corner Cases (by Joshua Bloch, Neal Gafter)

Este livro abalou a minha confiança na linguagem Java. Desde sempre coloquei esta linguagem num pedestal, acima das ferramentas mais habituais C/C++ por a considerar imune armadilhas de bugs difíceis de detectar e resolver. Como eu estava enganado ...

Este livro apresenta 95 exercícios escritos em Java. Para cada um é pedido ao leitor para pensar no resultado esperado. Depois, confirmam que o resultado que pensaste é este mas ... que está errado! A partir daqui começa por destruir as assunções que temos à partida da linguagem ou a nossa falta de atenção para os detalhes, com vista a dar pistas do qual será realmente o resultado. Por fim, apresenta a resolução dos exercícios e conselhos e boas práticas a seguir para evitar as armadilhas.

Felizmente, nem tudo é perdido. Grande parte dos "fenómenos anormais" dos exercícios são detectados por ferramentas de analise de código e pelos próprios IDEs mais recentes.

Recomendo a leitura deste livro a quem já estiver experiência de programação em Java. Só assim irá apreciar cada um dos exercícios propostos e dar o merecido valor às recomendações apresentadas.