2009-08-01 7 views
8

Kennt jemand Style-Checker oder Build-Tools, die Autoboxing und Unboxing vom Build-Server kennzeichnen?Build-Tool zum Erkennen von Autoboxing?

Ich habe bereits die Eclipse-Option, um es an meinem Ende zu markieren, aber nicht jeder im Projekt verwendet die gleiche IDE oder die gleichen Einstellungen. Es auf der Build-Seite zu finden, scheint die einzige Möglichkeit zu sein, zu erkennen, wo es in das Projekt eindringen könnte.

+0

Wäre dies eine Art von Werkzeug zur statischen Analyse von Java-Quellcode? –

Antwort

0

Ein besseres Werkzeug wäre eines, das Auto-Boxen auf Code-Pfaden hervorhebt, die ein Profiler langsam aufgrund Boxen zeigt. Explizites Boxen zu erzwingen ist vergleichbar mit der Vermeidung von Garbage Collection, da es in einem Edge-Fall langsam sein kann. Lassen Sie die Tools ihre Arbeit machen - Compiler und Sprache, um das eigentliche Problem, an dem Sie arbeiten, auszudrücken, und Profiler, um Performance-Probleme zu erkennen. Explizites Boxen ist im Zusammenhang mit der Lösung eines Problems unnatürlich, da es Sprachnuancen zeigt, die nicht Teil der Lösungsbeschreibung sind.

Edit: Ist diese Art von Kommentar hier angebracht? Ich versuche tatsächlich, hilfreich zu sein - tatsächlich habe ich in der Vergangenheit speziell über ein Tool nachgedacht, um Instanzen des CLI box Opcode auf heißen Pfaden zu identifizieren.

+0

@ 28OZ28: re commentary - Ich denke, es ist angemessen. –

3

Findbugs werden viele specific cases von potenziell problematischen Boxen Probleme identifizieren. Ich verlinkt direkt zu einem Beispiel, aber wenn Sie Strg-F für "Box" auf dieser Seite, finden Sie den Rest ganz einfach. Ich denke, dass das Suchen nach spezifischen Boxproblemen besser als das Großhandelsflaggen von allem ist. (mit anderen Worten stimme ich 280Z28 zu)

2

Wenn Sie Eclipse verwenden, rufen Sie die Einstellungen auf und gehen Sie zu Java - Compiler - Errors/Warnings. Im Abschnitt Mögliche Programmierprobleme unter einer der Optionen können Sie das automatische Boxing/Unboxing als Warnung oder Fehler aktivieren. Diese statische Analyse könnte sehr nützlich sein, wenn sie mit einem Profiler verwendet wird.

Wie 280z28 erwähnt, wäre es besser, ein Werkzeug zu haben, das Auto-Boxing/Unboxing-Fälle findet, die sehr häufig aufgerufen werden und die Leistung beeinträchtigen. Ein solches Werkzeug kenne ich allerdings nicht.

+1

Ursprüngliches Plakat sagte, dass er nach etwas suchte, das nicht jeder in seinem Team erfordert, um Eclipse zu verwenden. Ich bin im selben Boot, wo ich ein Entwicklerteam habe, das den Einsatz von Autoboxing im gesamten Team verbieten möchte, ohne eine bestimmte IDE im gesamten Team durchzusetzen. Leider muss ich noch ein Werkzeug finden, das dies außerhalb einer bestimmten IDE tut. –

Verwandte Themen