Java プログラム・リファクタリングのゴールは、プログラムの振る舞いに影響を与えることなく、システム全体にわたるコードを変更することです。 Java ツールは、コードのリファクタリングを容易するための支援を行います。
リファクタリング・ツールは、「Refactoring: Improving the Design of Existing Code」 (Martin Fowler 著、Addison Wesley 刊、1999 年) で解説されている、メソッドの抽出、ローカル変数のインライン化などを行うための多くの変換をサポートしています。
リファクタリング操作時に、実際にリファクタリング・アクションを実行する前に、リファクタリング・アクションを実行した結果どのような変更が行われるかをオプションでプレビューすることが可能です。リファクタリング操作をプレビューすると、潜在的な問題が通知され、リファクタリング・アクションが実行する変更のリストが表示されます。リファクタリング操作をプレビューしない場合、変更はすべて行われ、結果として発生した問題が示されます。リファクタリングを続行できない問題が検出された場合、操作は停止し、問題のリストが表示されます。
リファクタリング・コマンドは、いくつかの Java ビュー (「パッケージ・エクスプローラー」、「アウトライン」など) およびエディターのコンテキスト・メニューから使用できます。Java 要素の移動や名前変更では従属ファイルの変更が必要になることが多いため、実際のリファクタリング操作は、「移動」、「名前変更」など、多くの明らかに単純なコマンドです。
リファクタリングは対話式に実行できるだけではなく、スクリプトのリファクタリングからも実行できます。「リファクタリング」メニューで使用可能なほとんどのリファクタリングは、後でスクリプトをリファクタリングする際に使用できるように、ワークスペースのリファクタリング履歴に保管されます。リファクタリング・ツールは、ワークスペースのリファクタリング・ヒストリーのリファクタリングに基づいて、リファクタリング・スクリプトの作成をサポートします。作成したリファクタリング・スクリプトは、任意のワークスペースに適用することができます。リファクタリング・スクリプトを適用すると、リファクタリング・ウィザードが起動します。このウィザードは最初にリファクタリングを作成したユーザーによって開始されたかのように、リファクタリングを再生することができます。
リファクタリング・スクリプトに関連して、リファクタリング・ツールは JAR ファイルをより新しいバージョンにマイグレーションするためのリファクタリングを提供します。リファクタリング情報を使用することにより、マイグレーション後にワークスペースで変更が中断されるのを防ぐことができます。
リファクタリング・スクリプトの作成
リファクタリング・スクリプトの適用
リファクタリング・ヒストリーの参照