terça-feira, 10 de abril de 2012

PMD

Ao buscar uma ferramenta para revisar e melhorar meus códigos me deparei com algumas opções, e uma das que me chamou a atenção foi o  PMD (Programming Mistake Detector) pela facilidade da instalação e a simplicidade de executar a verificação do código fonte.
A funcionalidade do PMD é procurar e avisar sobre possíveis e potenciais problemas como por exemplo:

Possíveis erros - blocos try/catch/finally vazios.
Código morto - não utilizadas variáveis ​​locais, parâmetros e métodos privados.
Código Suboptimal - Utilização String / StringBuffer inadequadamente.
Expressões muito complicadaa - if usado desnecessariamente , loops  for que podem ser trocados por loops while.
Duplicação de código - o código copiado / colado pode também gerar bugs  copiado / colado

Para a instalação do PMD como plugin no Eclipse segue um link com o passo a passo :

Assim como a instalação, a utilização do PMD também é simples:
  • Selecione a Classe e clique com o botão direito  -> PMD -> Check Code With PMD



  • Como vemos na imagem, a guia Violations Overview, mostrou varias ocorrências, existe um aviso para a linha 21, está dizendo que a variável de referência id é um nome curto.



E você usa PMD ou outro tipo de plugin/ferramenta para verificação de qualidade do seu código? 
Deixe seu comentário!

sexta-feira, 9 de março de 2012

Usando final


Normalmente as linguagens de programação nos dizem que constantes não podem ser alteradas,na linguagem Java existe a palavra-chave  final para especificar constantes. 

static final int CONSTANTE = 10

//final em variáveis
class A{
 private final int teste = 10;
 public void foo(){
  teste++;// Não é permitido... 
 }  
} 
Qualquer código que tente modificar essa variável não ira compilar, ou seja, uma variável cujo conteúdo não pode ser alterado durante a execução do programa.
Já no caso dos métodos marcados como final não podem ser sobrescritos e nas classes quando marcada como final temos que pensar diferente, estamos marcando a referência ao objeto, isso quer dizer que somente ela não poderá ser alterada as suas propriedades do objeto pode sofrer alteração, claro se não estiverem sendo marcadas também como final.

//final em métodos 
class A{
  final void metedo(){}  
}
  
class B extends A{  
  //o metodo da class A nao eh herdado  pela class B  
}

//final em classes
class final A{}
// Isso não é permitido  
class B extends A{}

segunda-feira, 5 de março de 2012

Técnica Pomodoro




A Técnica Pomodoro é um metodo de gerenciamento do tempo de desenvolvimento em geral (estudo/trabalho) para o aumento da produtividade, foi criado por Francesco Cirillo no final dos anos 1980,
a técnica se baseia na divisão de tarefas em periodos de 25 minutos chamados de "pomodoros" por Francesco, com a ideia de pausas frequentes que podem aumentar a agilidade na hora do desenvolvimento
das tarefas.

São cinco os passos básicos para implementar a técnica:
1- Escolher a tarefa a ser executada
2- Ajustar o pomodoro (alarme) para 25 minutos
3- Trabalhar na tarefa até que o alarme toque; registrar com um "x"
4- Fazer uma pausa curta (3 a 5 minutos)
5- A cada quatro "pomodoros" fazer uma pausa mais longa (15-30 minutos)


Aplicativo baseado na Técnica Pomodoro:
PomodoroTimer: timer para ajudar na contagem tempo das tarefas [pomodorotimer].

O site oficial com mais detalhes e com um e-book sobre essa técnica que pode ser baixado no site The Pomodoro Technique.