Arquivos | Java Effective RSS for this section

Exceções – Item 59

avoidEvite o uso desnecessário de exceções checadas

O uso excessivo de exceções checadas pode tornar a utilização de uma API desagradável, impondo uma carga adicional de trabalho sobre o programador usuário. Sendo assim, evite o uso de exceções checadas a menos que a condição excepcional possa realmente ser recuperada, confrontando o programador a fazer alguma coisa de útil quando tratar a condição. No resto, prefira usar exceções não checadas ou a abordagem que transforma uma exceção checada em dois métodos separados, um retornando um booleano indicando o acontecimento do caso excepcional e outro que execute e operação.

Para todas as informações, veja o post inicial

“Sabemos que todas as coisas cooperam para o bem daqueles que amam a Deus, daqueles que são chamados segundo o seu propósito.” Romanos 8:28

Exceções – Item 58

2153Use cada tipo de exceção corretamente

A linguagem Java fornece três tipos diferentes de criação de exceções, cada uma para um fim específico:

  1. Checadas – usadas para situações em que o chamador tenha condições de se recuperar.
  2. Não Checadas – usadas para indicar erros de programação.
  3. Erros – usadas exclusivamente pela JVM para indicar deficiências em recursos e falhas em invariantes que tornem impossível continuar a execução da solução.

Sendo assim, use as exceções “Checadas” caso julgar que a condição é recuperável, senão use exceções de “Não Checadas” para definir erros de programação. Não crie nenhuma exceção do tipo “Erros”, uma vez que elas são por convenção reservadas exclusivamente para condições de erros da JVM.

Para todas as informações, veja o post inicial

“O caminho de Deus é perfeito; a palavra do SENHOR é provada; ele é escudo para todos os que nele se refugiam.” Salmos 18:30

Exceções – Item 57

consolidated-dont-do-it-deck-7875-p2326-5324_zoomSó use exceções em condições excepcionais

As exceções foram projetadas para fazer sinalização de condições excepcionais. Portanto, não use exceções para controle de fluxo e não crie API que forcem os outros a usarem com controle de fluxo.

Para todas as informações, veja o post inicial.

“A resposta branda desvia o furor, mas a palavra dura suscita a ira.” Provérbios 15:1

Programação – Item 56

txtAdote convenções de nomeação geralmente aceitas

A plataforma Java tem um conjunto bem estabelecido de convenções de nomeação para criação dos elementos de programação: pacotes, classes, interfaces, anotações, tipos genéricos, métodos, campos e variáveis. Raramente esses padrões devem ser violados e nunca sem uma boa razão. Segue as consequências de violar essas convenções:

  1. API fica difícil de ser utilizada.
  2. API fica difícil de ser alterada.
  3. Confundir e irritar os programadores usuário da API.
  4. Podem causar suposições falsas resultando em erros.

Diante disso, aprenda as convenções de nomeação padrão da plataforma Java e use com bom senso. Segue o link do Java Code Convention.

Para todas as informações, veja o post inicial.

“Filhinhos, não amemos de palavra nem de boca, mas em ação e em verdade.” 1 João 3:18

Programação – Item 55

Online_video_marketing_optimize_conversion_rates_tips_id35618561Otimize Criteriosamente

A historia das décadas passadas nos mostram que otimização prematura na verdade é mais propenso a causar danos do que benefícios. O caminho da otimização precoce pode leva-lo a uma solução que ainda não seja rápida, arquiteturalmente ruim e pior de tudo inflexível de difícil evolução. Portanto, não tente criar programas rápidos! Na verdade, foque em criar bons programas, usando todos os conceitos, princípios e abordagem necessários. Se um programa bem arquiteturado não for rápido suficiente, a boa arquitetura já estabelecida permitira que ele seja facilmente otimizado. Não pense em problemas de desempenho enquanto estiver projetando uma solução. Quando terminar a codificação, avalie seu desempenho. Se ele for suficientemente rápido, tudo estará resolvido. Caso contrário, localize a fonte de gargalo usando uma ferramenta de gerador de perfil e trabalhe nas partes relevantes. Repita esse processo conforme necessário, avaliando o desempenho após cada alteração até apresentar um tempo satisfatório.

Para todas as informações, veja o post inicial.

“Tudo quanto, pois, quereis que os homens vos façam, assim fazei-o vós também a eles; porque esta é a Lei e os Profetas.” Mateus 7:12

Programação – Item 54

downloadUse métodos nativos criteriosamente

O uso de métodos nativos apresentam desvantagens perigosas:

  1. Não são seguros por estarem abertos a erros de adulteração de memória.
  2. Dependência de plataforma especifica.
  3. Custo de desempenho pelo acesso e abandono associado ao código nativo.
  4. Difícil e tedioso de escrever e ler.
  5. São difíceis de depurar.

Diante destes fatos pense duas vezes antes de usar métodos nativos. Sempre tente utilizar a menor quantidade possível.

Para todas as informações, veja o post inicial.

“Não acumulem para vocês tesouros na terra, onde a traça e a ferrugem destroem, e onde os ladrões arrombam e furtam. Mas acumulem para vocês tesouros nos céus, onde a traça e a ferrugem não destroem, e onde os ladrões não arrombam nem furtam.” Mateus 6:19-20

Programação – Item 53

zooms-2195-0Prefira interfaces à reflexão

Reflexão é um recurso muito poderoso necessário para execução de certas tarefas sofisticadas de programação, usada na implementação de recursos bem específicos. É acompanho de muitas desvantagens:

  1. Perda dos benefícios da verificação de tempo de compilação.
  2. A codificação ficara deselegante, complexo e verboso.
  3. Perda no desempenho.

Diante disso, sempre prefira usar estruturas baseadas no contrato de interfaces polimórficas (Item 52) do que reflexão pura. Veja que na verdade, isso resulta em uma forma limitada de reflexão com seus benefícios, sem incorrer em tantas desvantagens. Somente use reflexão em casos realmente necessários que demandem estruturas altamente dinâmicas e genéricas.

Para todas as informações, veja o post inicial.

“Pelo que também Deus o exaltou soberanamente e lhe deu um nome que é sobre todo o nome…” Filipenses 2:9

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 663 outros seguidores