2つの無関係なJTableを表示する膨大なJDialogクラス(〜2000行)があります。私は3つのクラス(JDialog、Jtable1とJTable2)に分割したいと思います。どんな変数とどのメソッドが各テーブルで使用されているかを調べて関連するクラスに移動することはできますが、この手動リファクタリングは面倒です。異なるクラスへのコードの分離[Java]
このようなリファクタリングを自動化する方法はありますか?
これを達成するには、トークンのアキュムレータが必要です。最初のトークンは、例えば、panel.add(jTable2)のjTable2
です。今度はjTable2を持つすべての行をチェックし、アキュムレータにトークンを追加します。新しいトークンが発見されなくなるまで、関連するトークンの検索を繰り返します。各トークンについて、それを含む行を探します。角括弧を含むように選択範囲を展開します。
おそらく最も大きな言語のプログラマーがまだこのようなツールを作っていないとは考えにくいです。これは、IDEのツールを探すのに似ているはずです。
「わかりやすい最大の言語」 - 私はこれを読むまで、これは良い質問であると思いました。私はあなたがリファクタリングがどのように行われたかを理解しているとは思わない。このようなことをした他の言語はいくつですか?私の推測は「なし」です。 – duffymo