Raccomandazione dello strumento di analisi statica per Java? [chiuso]
https://stackoverflow.com/questions/97599
Full question
DOMANDA
Avendo una vaga familiarità con il mondo Java stavo cercando su Google uno strumento di analisi statica che fosse anche abbastanza intelligente da risolvere i problemi che trova. Ho eseguito lo strumento CodePro ma, ancora una volta, sono nuovo nella comunità Java e non conosco i fornitori.
Quale strumento puoi consigliare in base ai criteri sopra?
SOLUZIONE
FindBugs, PMD e Checkstyle sono tutte scelte eccellenti soprattutto se le integri nel tuo processo di compilazione.
Nella mia ultima azienda abbiamo anche utilizzato Fortify per verificare la presenza di potenziali problemi di sicurezza. Siamo stati fortunati ad avere una licenza aziendale, quindi non conosco il costo in questione.
ALTRI SUGGERIMENTI
Raccomando FindBugs. http://findbugs.sourceforge.net/ Buono nel fornire assistenza per la revisione del codice.
IntelliJ IDEA da JetBrains. Fanno anche ReSharper nella comunità .Net.
Ecco il mio elenco (45 articoli) di strumenti di analisi statica di provenienza gratuita / aperta: Strumenti per la qualità del codice Java - Panoramica
Sonar è uno strumento di controllo della qualità. Misura la qualità delle applicazioni Java attraverso l'osservanza delle convenzioni delle regole di codifica, delle misure metriche e degli indicatori avanzati.
Il sonar si basa sui seguenti progetti:
-
JavaNCSS : metriche di qualità
-
Checkstyle : Style Cheking
-
PMD : scansione del codice per potenziali errori.
-
Cobertura : copertura del test
Puoi anche utilizzare Simian per il rilevamento di duplicati.
CRAP4J non è solo un nome fantastico ma è abbastanza utile. Gli altri buoni sono tutti sopra, il migliore di tutti (IMHO) è FindBugs, perché trova davvero bug onestà subito in una grande base di codice.
Puoi provare JavaDepend , integrare altri strumenti di analisi statica e fornire un linguaggio CQL per eseguire query su codice come database ,
JavaDepend offre anche molte visualizzazioni interattive per comprendere la base di codice esistente e più di 82 metriche.
Tutti i precedenti sono ottimi strumenti. PMD è probabilmente il più comune.
Un altro strumento è Enerjy . Recentemente è diventato gratuito, quindi puoi scaricarlo e provare tu stesso. Enerjy è un po 'più organizzato e si adatta meglio alle squadre più grandi. Semplifica la personalizzazione e la condivisione delle regole. Personalmente, non sono un grande fan, ma forse ti piacerà più di me.