Tenho visto muito código Java ultimamente nos quais não são utilizados finally.
Para quem não sabe, o bloco com finally sempre será executado quando existir, independentemente se ocorrer algum erro dentro do Try ou não. Usar finally é uma boa prática, o mesmo deve ser utilizado para fazer uma espécie de limpeza na aplicação, por exemplo: fechar alguma estrutura de dados e liberar memória, como no básico código abaixo:
try { System.out.println(rs....); } catch (Exception e) { // tratamento de erro } finally { // código que será executado, independente se entrou no catch ou não rs.close(); } |
Um erro muito comum que encontro é este:
try { System.out.println(rs....); rs.close(); } catch (Exception e) { // tratamento de erro } |
O desenvolvedor fecha a estrutura dentro to try, porém, se ocorrer um erro no momento do println, a estrutura não será fechada. Eu já vi servidores caírem ou o desempenho do sistema ficar inaceitável devido ao erro acima!
Algo muito importante, é procurar por "Throws" na documentação dos métodos que você está utilizando e pelas exceções lançadas por ele, assim, você trata todos os erros possíveis utilizando blocos catch, prevenindo-se assim, os possíveis erros em tempo de execução e informando os erros ao usuário de forma mais clara.
Lembre-se sempre de utilizar finally e fechar todas as estruturas de dados, arquivos, etc que seu código faz uso. É uma boa prática!
Maiores informações aqui.
Nenhum comentário:
Postar um comentário