Ich habe eine aufgeblähte JDialog-Klasse (~ 2000 Zeilen), die zwei nicht verwandte JTables anzeigt. Ich möchte es in drei Klassen aufteilen (JDialog, Jtable1 und JTable2). Ich kann untersuchen, welche Variablen und welche Methoden von jeder Tabelle verwendet werden und sie in relevante Klassen verschieben, aber dieses manuelle Refactoring wird mühsam.Trennung von Code in verschiedene Klassen [Java]
Gibt es eine Möglichkeit, ein solches Refactoring zu automatisieren?
Um dies zu erreichen, sollte ein Skript einen Akkumulator von Token haben. Das erste Token ist zum Beispiel jTable2
von panel.add (jTable2). Überprüfen Sie nun alle Zeilen, in denen jTable2 enthalten ist, und fügen Sie Token zum Akkumulator hinzu. Wiederholen Sie die Suche nach relevanten Tokens, bis keine neuen Token mehr gefunden werden. Suchen Sie nun für jedes Token nach Zeilen, die es enthalten. Erweitern Sie die Auswahl um Klammern.
Es ist kaum zu glauben, dass Programmierer der wohl größten Sprache noch kein solches Werkzeug entwickelt haben. Dies sollte dem Usage-Tool in IDE sehr ähnlich sein.
"Wahrscheinlich größte Sprache" - Ich dachte, das war eine gute Frage, bis ich diesen Zusatz gelesen habe. Ich glaube nicht, dass Sie verstehen, wie Refactoring durchgeführt wird. Wie viele der anderen Sprachen haben so etwas getan? Meine Vermutung ist "keine". – duffymo