Sonar é uma plataforma open source, utilizado para gerir qualidade de códigos fonte java.
Atualmente, em sua versão 1.6 que representa uma importante evolução da plataforma: a partir de um relato de uma ferramenta métrica de qualidade, o Sonar torna-se um código de gestão da qualidade da plataforma.
Veja as principais funcionalidades que já estavam disponíveis no Sonar 1.5:
Análise estática e dinâmica em projetos java
Configuração centralizada de normas de qualidade a serem utilizadas (Checkstyle, PMD e Findbugs)
Capacidade de ver a evolução ao longo do tempo
Gestão do evento durante o ciclo de vida do projeto
Consolidação do project portfolio
Com a versão 1.6 do Sonar, acrescentamos:
1 - Sonar agora é capaz de gerenciar múltiplos perfis de qualidade, o que significa que é possível tratar de forma diferente as bibliotecas, projetos técnicos, projetos legado, novos projectos, etc.
2 - É possível configurar limites como parte de um perfil da qualidade sobre qualquer métrica.
Pelo que pude notar ele usa alguns plugins do maven para fazer essa análise. Acredito que ele faça alguma tratativa nos relatórios gerados por esse plugins para poder apresentar os gráficos que facilitam tanto a visualização da situação do seu projeto.
É interessante ver a forma que o Java evoluiu. Trabalho já há uma década com Java e naquele tempo era fazer código, compilar e testar na mão.
Agora há uma série de ferramentas para fazer esses trabalhos chatos como testar códigos, validar a integração… e por aí vai. Isso facilita (e muito) o trabalho, e torna o desenvolvimento simplificado.
Por “mais bom” que seja o programador, pode ficar um atributo qualquer que possa dar um NullPointer, por exemplo. E para o programador que fez o código as vezes não nota, muitas vezes por ser um código extenso, ou pela correria, ou até mesmo pq quem faz vicia um pouco o código de tanto olhar para ele.
Há algum tempo testei essas ferramentas como o findbugs e outras mais que fazem a integração continua, e realmente, vale a pena usar. Fiz umas cacas nos códigos proposital e ele detectou na boa e me informou do erro. Muito bom mesmo.
Lá eles rodaram uma ferramenta de otimização que sugeria a alteração do fonte do OpenSSH, e isso foi feito somente no Debian sem comunicar o pessoal do OpenSSH; e gerou todo esse problema, muito bate-boca e brincadeiras como essa:
Boa tarde, amigos.
Sou novo no fórum e estou procurando uma ferramenta em java que realize inspeção de código ad-hoc, tipo o findbugs. A questão é que preciso que realize inspeção não somente em código java, mas também em outras linguagens. (C, dot net, delphi, etc)
Vocês conhecem alguma que faça isso, api free e em java?