1

リファクタリングしているレガシーコードがあります。現在のところ、SuperParent と呼ぶスーパー クラスがあります。SuperParent に機能を追加する必要がある場合は、SuperParent を拡張して、特定の機能のインターフェイスを作成し、SuperParent を拡張してこのインターフェイスを実装するクラス subParent を作成します。これが続き、この SuperParent から本質的に拡張されるクラスの大きなセクションが作成されます。

これをリファクタリングする正しい方法が何であるかわかりませんか?合成だけでいいの?これをリファクタリングする私の主な目標は、コードをよりクリーンにすることです。SuperParent には非常に多くの拡張機能があるため、拡張するクラスを確認するのは困難です。手に負えなくなってきています。

4

1 に答える 1

0

テンプレート -> 戦略リファクタリング:

必要なスーパー クラスのフィールドごとにメソッドをグループ化します。フィールドとメソッドを、スーパー クラスに渡される戦略クラスにリファクタリングします。メソッドがオーバーライドされる場所は、戦略クラスの代替実装で渡されます。

于 2013-03-27T16:43:45.570 に答える