コードのリファクタリングは、ソフトウェアの構築と保守の重要な側面です。
コードを手動でリファクタリングする場合、古いコードを使用するか新しいコードを作成するかに関係なく、メソッドの名前を変更するときにコードを使用するのを忘れるなどの間違いが発生しやすくなります。これが、私が PhpStorm のリファクタリング機能を定期的に使用したい理由です。 (推奨学習: phpstorm)
この用語を初めて聞いた場合、Martin Fowler はリファクタリングを次のように説明しています:
重构是一种用于改进现有代码库设计的受控技术。它的本质是应用一系列小的行为保留转换,每个转换“都太小,不值得做 ”。但是,每个转换的累积效果都非常显着。通过分步进行,可以降低引入错误的风险。您还可以避免在进行重组时损坏系统,这使您可以在较长的时间内逐步重构系统。
リファクタリングには、移動、抽出、コピー、削除、名前変更など、さまざまな手法が含まれます。これらは、時間の経過とともにコードに加えられる可能性のあるあらゆる種類の変更をカバーします。
幸いなことに、PhpStorm のリファクタリング機能 (コア パッケージに含まれています) は、これらの機能をすべてサポートしています。このチュートリアルでは、それらのいくつかを段階的に説明します。特別:
コードを新しいメソッドに抽出します
関数の名前を変更します
関数のシグネチャを変更します
コードを新しいメソッドに抽出します Method
コードを新しいメソッドに抽出することは、私がほとんど (そしておそらく他の何よりも) リファクタリングを行っていることです。長い関数を、より小さく、再利用可能で、よりテストしやすい一連の関数に分割することで、より適切に整理できるのに遭遇した回数は数え切れません。
次の関数を例として取り上げます。
public function populate($data) { if (is_array($data) && empty($data)) { throw new HydrationException(); } $this->id = $data['id']; $this->userId = $data['userId']; $this->entry = $data['entry']; $this->created = $data['created']; $this->updated = $data['updated']; }
小さいですが、この例では十分です。関数の最後の 5 行がクラスの他の部分で必要であるか、別の関数で使用した方がよいとします。
私たちがやりたいのは、それらを別のメソッドに抽出することです。これを行うには、まず抽出したい行を強調表示し、「リファクタリング -> 抽出 -> メソッド」をクリックします。これにより、以下に示すように、一連のデフォルト オプションが事前に設定された [抽出方法] ダイアログ ボックスが表示されます。
私たちがしなければならないことは、メソッドの名前を入力することだけです。残りのオプションは、適切なデフォルトのセットであるため、そのままにしておくことができます。ただし、もう 1 つ行ったのは、唯一のパラメーター
$data
に型ヒントを指定することでした。これにより、機能がより明確になり、生成された PhpDoc ブロックにもその情報が含まれます。 「リファクタリング」をクリックすると、新しいメソッドが生成され、強調表示されたコードがその呼び出しに置き換えられます。これを次に示します。
rree以上がphpStorm を使用してコードをリファクタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。