Recomendación de herramienta de análisis estático para Java?

Al estar vagamente familiarizado con el mundo de Java, buscaba en Google una herramienta de análisis estático que también fuera lo suficientemente inteligente como para solucionar los problemas que encontraba. Ejecuté la herramienta CodePro pero, nuevamente, soy nuevo en la comunidad Java y no conozco a los proveedores.

¿Qué herramienta puede recomendar según los criterios anteriores?

FindBugs, PMD y Checkstyle son excelentes opciones, especialmente si las integra en su proceso de construcción.

En mi última compañía también utilizamos Fortify para verificar posibles problemas de seguridad. Fuimos afortunados de tener una licencia empresarial, así que no sé el costo involucrado.

  • Findbugs
  • PMD
  • Checkstyle
  • Lint4J
  • Classycle
  • JDepender
  • Marica
  • Google Codepro

Recomiendo FindBugs. http://findbugs.sourceforge.net/ Bueno en ayudar a hacer la revisión del código.

IntelliJ IDEA de JetBrains. También hacen ReSharper en la comunidad .Net.

Aquí está mi lista (45 artículos) de herramientas de Análisis estático de origen libre / abierto: Herramientas de calidad de código Java – Descripción general

Sonar es una herramienta de control de calidad. Mide la calidad de las aplicaciones de Java a través del cumplimiento de las convenciones de reglas de encoding, medidas métricas e indicadores avanzados.

Sonar se basa en los siguientes proyectos:

  • JavaNCSS : Métricas de calidad

  • Checkstyle : estilo Cheking

  • PMD : análisis de código para posibles errores.

  • Cobertura : Cobertura de prueba

También puede usar Simian para la detección de duplicaciones.

CRAP4J no es solo un nombre asombroso, pero es bastante útil. Los otros buenos están todos arriba, lo mejor de todo (en mi humilde opinión) es FindBugs, porque realmente encuentra errores honestos en una gran base de código.

Puede probar JavaDepend , complementa otras herramientas de análisis estático y proporciona un lenguaje CQL para consultar código como base de datos,

JavaDepend proporciona también muchas vistas interactivas para comprender la base de códigos existente y más de 82 métricas.

Todo lo anterior son excelentes herramientas. PMD es probablemente el más común.

Otra herramienta es Enerjy . Recientemente se convirtió en gratuito, por lo que puede descargarlo y probarlo usted mismo. Enerjy está algo más organizado y se adapta mejor a equipos más grandes. Hace que sea más fácil personalizar y compartir las reglas. Personalmente, no soy un gran admirador, pero tal vez te guste más que yo.

Pareja de vendedores comerciales que tienen una oferta de Java:

Klocwork Coverity

No “arreglarán los problemas” que encuentren (ni lo harán, creo yo, ninguno de los otros mencionados anteriormente), pero estas son todas las herramientas que tienen diferentes puntos fuertes.

    Intereting Posts