Mi piacerebbe sapere quale strumento è il migliore per trovare qualsiasi tipo di bug nel mio codice. So che potrebbe trattarsi di una domanda teorica o infinita, quindi vorrei modificarla in termini di efficienza nella segnalazione dei bug (compresa la convenzione di denominazione). Quindi puoi dire quali rapporti sugli strumenti e bug massimi e se effettivamente utilizzati nel settore? Ho sentito di findbug è davvero buono?Qual è lo strumento migliore per trovare bug nel codice Java?
risposta
FindBugs è probabilmente uno dei più importanti e vale la pena provare.
Per le convenzioni di denominazione ecc., Suggerirei di dare un'occhiata a CheckStyle.
Sì, ho usato find bugs ma non abbiamo alcun bug per lo stile. Passando attraverso lo stile di controllo lasciami provare anche quello. – amod
Findbugs è abbastanza buono. Tuttavia, consiglierei di usare sonar per mantenere la qualità del codice. http://www.sonarsource.org/ Si integra bene con Maven (sonar: sonar). Oltre a questo, credo che l'uso del sito Maven per creare check-up, pmd, findbugs e tutti i report aiuti anche a tenere gli sviluppatori sulle spine.
utilizzare un compilatore per trovare
casi l'uso di test di sintassi 'bug' per trovare usabilità 'bug'
imbracature uso di test nel codice per trovare problemi di regressione con modifiche al codice.
Preferisco utilizzare l'analisi del codice in IntelliJ. Non trova solo molti bug e miglioramenti probabili, ma ha soluzioni rapide per molti di loro che rende pratico risolvere grandi quantità di codice.
mostra anche le convenzioni di denominazione standard? – amod
Conversioni di denominazione standard con soluzioni rapide. cioèse un 'public static final' è in camelCase, evidenzia (o appare in un report) e ti dà la possibilità di rinominarlo in UPPER_CASE cambiando tutti i riferimenti (anche nei commenti, String e file) –
Dipende da ciò che stai cercando. Personalmente, utilizzo una combinazione di FindBugs e PMD per l'esecuzione dell'analisi statica del codice Java. Tuttavia, ho recentemente scoperto uno Eclipse plugin called CodePro Analytix by Google.
Esistono due tipi di analisi per il codice Java: analisi del codice sorgente e analisi del codice byte. PMD guarda il codice sorgente per trovare possibili bug, codice inutilizzato, codice subottimale, espressioni complicate e codice duplicato. FindBugs controlla il codice byte generato per trovare possibili errori. Entrambi sono essenziali quando si analizza un'applicazione.
Tuttavia, quando si tratta di trovare difetti, niente batte una buona struttura di test e (se necessario) una libreria di derisione. Ho avuto buoni successi con JUnit e Mockito. Ciò ti consentirà di scrivere test unitari per i tuoi moduli. Anche scrivere sistemi di codice, integrazione e test del fumo, sia utilizzando strumenti automatici sia procedure di test, è importante per poter coprire le funzionalità di base e vedere rapidamente quando qualcosa è rotto.
- 1. Qual è lo strumento migliore per scrum in TFS
- 2. Qual è lo scopo dell'annotazione @param nel codice Java?
- 3. Strumento per convertire java in codice C#
- 4. Qual è il modo migliore per eseguire codice Java sandboxed?
- 5. Qual è lo strumento migliore per lo sviluppo di applicazioni Blackberry?
- 6. Strumento/gemma per trovare il codice commentato
- 7. Qual è lo strumento migliore per il controllo della sicurezza Javascript?
- 8. Qual è un buon strumento per annotare il codice?
- 9. Qual è lo strumento migliore per analizzare i file di registro?
- 10. Qual è il modo migliore per trovare la home directory degli utenti in Java?
- 11. Qual è lo stile di codifica migliore?
- 12. Qual è lo strumento migliore e più semplice per testare le app Android?
- 13. Qual è lo strumento migliore per organizzare o alfabetizzare automaticamente le proprietà CSS?
- 14. Qual è l'approccio migliore per usare openGL nel web?
- 15. Qual è il modo migliore per trovare il codice che blocca il thread principale?
- 16. Qual è la migliore rete IRC per Java (#java)?
- 17. Qual è il modo migliore per documentare il codice f #?
- 18. Java: qual è la migliore struttura di implementazione per Graph?
- 19. Qual è il modo migliore per analizzare (grande) XML nel codice C#?
- 20. Intervalli in Java, qual è l'approccio migliore?
- 21. Come trovare bug nel nuovo bug tracker JavaFx
- 22. Qual è lo strumento di generazione standard in Erlang?
- 23. per lo scambio di equazioni nel codice
- 24. Qual è il modo migliore per integrare uno strumento di compilazione esterno in Eclipse?
- 25. Qual è il modo migliore per memorizzare un database MySQL nel controllo del codice sorgente?
- 26. Qual è il modo migliore per usare il codice Python da Scala (o Java)?
- 27. Qual è il posto migliore per segnalare i bug in ASP.NET MVC?
- 28. Qual è il modo migliore per eseguire lo sviluppo Java in Emacs?
- 29. Qual è il modo migliore per utilizzare una libreria Rust nel codice Swift?
- 30. Strumento open source per trovare codice C# irraggiungibile/non utilizzato
Usa quello situato tra le tue orecchie, quello è il più potente e non è sostituibile da nessuna macchina utensile ;-) –
@Peter bel commento ... ma a volte non sembra pratico soprattutto quando sei solo un antipasto .. Questi strumenti ti aiuteranno ad aumentare il tuo database di strumento chiamato cervello che può essere usato in seguito .... findbug ha migliorato molto la mia pratica di codifica. – amod
Infatti. Ma a meno che tu non impari * perché * gli avvisi specifici di FindBugs siano emessi e come evitarli, cioè come scrivere un codice migliore (per il quale devi usare il cervello), non diventerai uno sviluppatore migliore, non importa quanti codici strumenti di analisi che usi. –