Rails プロジェクトをリファクタリングする

コードは、技術や市場のニーズが発展するにつれて、進化します。やがて、拡張の余地拡大、パフォーマンス向上、変化するニーズへの対応、あるいは単にコード・ベースのクリーンアップのために、既存コードの変更が必要になる場合があります。リファクタリングは、ユーザーの観点から見て動作を変更せずに既存のコードを設計し直すプロセスを指す用語です。

リファクタリングは小規模な場合も大規模な場合もありますが、小規模な変更でもバグが持ち込まれるおそれがあります。リファクタリングが効果的であるためには、それを正しくかつ完全に行う必要があります。1 箇所変更するだけでも、コード・ベース全体に変更が及ぶことがあります。リファクタリングでは、すべての変更を安全な操作で確実かつ永続的に処理するため、パフォーマンスまたは保守性の向上以上に動作が変更されることはありません。

リファクタリング機能のサポートは型付き言語の IDE では今や当たり前になっていますが、動的言語の IDE では簡単には利用できません。動的言語の場合は、型情報が静的に入手できないため、自動リファクタリングを実行するのは困難です。3rdRail では、高度な型推論(プログラムを静的に解析して型を決定する)と意味的型推論(特定のフレームワーク・セマンティクスのコンテキストでプログラムを静的に解析する)を実行することで、リファクタリングを実現しています。

リファクタリングのデモについては、『ビデオ:3rdRail - Railsアクションのリファクタリング(英語)』をご覧ください。

リファクタリングを実行するには:

  1. Rails アイテムを強調表示します。
  2. 右クリックし、リファクタリング メニューを選択します。
  3. 以下の中からリファクタリングのタイプを選択します(状況に応じた選択)。

    ヒント:

    選択されたアイテムがコントローラー、ビュー、アクションのいずれでもない場合は、「Rails アイテム名の変更...」が表示されますが、無効になっています。

  4. リファクタリング ダイアログで、リファクタリング情報を確認し、内容に応じて基準を変更します。
  5. プレビュー > をクリックして、リファクタリング・タスクをプレビューします。
    プレビュー ダイアログには、リファクタリングの影響を受けるすべてのディレクトリー、ファイル、宣言、使用法のチェック・リストが表示されます。リファクタリングの対象から除外するアイテムを 1 つずつ選択します。チェック・リスト内のアイテムをクリックすると、元のデータと変更の説明が強調表示されます。
    OK をクリックして、リファクタリング・タスクを処理します。

    警告:

    動的言語のリファクタリングは、100% 正確というわけではありません。リファクタリングの後でテストすることをお勧めします。

    ヒント:

    プレビュー ダイアログで変更を加えていない場合は、ワークベンチから以下を選択してリファクタリングを取り消します。

    編集 > 元に戻す


企業ロゴ CodeGear のブランド名および製品名は、米国およびその他の国における Borland Software Corporation のサービス・マーク、商標、または登録商標です。