少なくとも数千行の長さのレガシー プロジェクト内に 1 つの PHP ファイルがあります。これは主に、約 10 ケースの switch ステートメントによって、いくつかの異なる条件ブロックに分割されます。それぞれのケース内に、完全に重複していなくても、非常によく似たコード ブロックのように見えるものがあります。これらのコード ブロックが同一またはほぼ同一であることを識別して、そのコードを抽象化し、ファイル全体のリファクタリングを開始するには、どのような方法を使用できますか? 私はこれが非常に手作業で可能であることを知っています (コード内の各 case ステートメントを個々のファイルと Diff に分けます) が、このプロセスを高速化するために使用できるツールに興味があります。
ありがとう。