1

XSD から生成された 4 つの同様のクラス構造があります。それぞれが異なるバージョンの API です。

問題は、これらすべての異なるクラス構造で動作するクラスがありますが、コードの大部分はすべての構造で同じです。すべてのクラスは XSD から生成されるため、クラスごとにインターフェイスを持つことはできません。それでも、コードベースから重複を削除したい...

ここで良い OO ソリューションは何でしょうか?

ありがとう。

4

2 に答える 2

0

少しオブジェクトコンポジションを使用します。共有機能を保持するクラスを定義し、生成された各クラスのメンバーとしてインスタンスを保持します。クラスで保持する可変状態の量を最小限に抑えて、テストを容易にするようにしてください。

于 2010-11-16T01:39:27.577 に答える
0

私はおそらくファサードクラスを使用するつもりです。このクラスは、他の 4 つのクラスについて知っておく必要がある唯一のポイントです。正しいクラスへの呼び出しの中継を処理します。このようにして、重複コードの削減を達成するだけでなく、コードベースの残りの部分から API を抽象化し、API の変更に対処しやすくします。

HTH。

于 2010-11-18T13:22:45.907 に答える