リファクタリングの概要
リファクタリングは、既存のコードの振る舞いは変えずに、そのコードを再構成したり変更するために使用できる技術です。 リファクタリングを利用すると、アプリケーション コードのパフォーマンスと可読性の両方を効率化、単純化、および改善できます。
各リファクタリング操作は、特定の種類の識別子に対して実行されます。 リファクタリング操作を何度も連続して実行すると、コードの構造が大きく変更されていきます。ただし、それぞれのリファクタリングは 1 つの型のオブジェクトや操作に限定されるので、誤差を小さくできます。 特定のリファクタリングによって、予期しない結果が生じることがわかった場合は、いつでもそのリファクタリングを元に戻すことができます。
各リファクタリング操作には、固有の制約セットがあります。 たとえば、コンパイラによってインポートされたシンボルの名前は変更できません。 これらの制約については、それぞれのリファクタリングのトピックで説明しています。 Delphiでは、ジェネリックスを使用した識別子に対してリファクタリング操作を適用できます。
RAD Studio には、リファクタリング操作の評価や実行を行うリファクタリング エンジンが内蔵されています。 エンジンは 2 つあります。1 つは組み込み(Delphi 用)で、もう 1 つは Visual Assist 搭載のものです(C++ 用)。またこのエンジンは、コード エディタの下部に表示される[リファクタリング]ペインに、どのような変更が生じるかのプレビューを表示します。 想定されるリファクタリング操作がツリー ノードとして表示されます。このツリー ノードを展開すると、そのリファクタリング操作によって影響を受ける可能性のある要素が表示されます(存在する場合)。 警告やエラーもこのペインに表示されます。
リファクタリング ツールには、[検索]メニューや[リファクタリング]メニュー、そして、コード エディタや、モデリングのダイアグラム ビューやモデル ビューのコンテキスト メニュー(メニューをアクティブにするには右クリックします)から、アクセスすることができます。
Delphi のリファクタリング ツール
[シンボル]メニューには、検索に関する次のツールが含まれています:
次のリファクタリング操作は、コード エディタと[リファクタリング]メニューからのみアクセス可能です:
コード エディタ、または、モデリングのダイアグラム ビューやモデル ビューでは、次のリファクタリング操作が使用できます:
- メンバを移動する
- インターフェイスを抽出する
- スーパークラスを抽出する
- [メンバのプル アップ]および[メンバのプッシュ ダウン]
- [安全な削除...]
- 変数をインライン化する
- フィールドを導入する
- 変数を導入する
- [リファクタリング]ペインでのリファクタリング操作のプレビュー
C++ リファクタリング ツール
このリファクタリング ツールには、[検索]および[リファクタリング]メニューからアクセスすることができます。また、コード エディタのコンテキスト メニュー(メニューをアクティブにするには右クリックします)から、アクセスすることができます。
次のツールは、コード エディタおよび[検索]メニューにあります:
さらに、コード エディタと[リファクタリング]メニューから、次のような他のリファクタリング ツールにアクセスすることができます: