2011-01-24 13 views
6

別のオブジェクトに基づいてXML設定ファイルを構築するクラスを作成する必要があります。オブジェクト指向設計の質問

3つのオブジェクトがあります。ビルディングアルゴリズムはすべてのオブジェクトで非常に似ていますが、同じではありません。

私は、抽象メソッドで基本クラスを使用し、次に抽象メソッドをオーバーライドする派生クラスを作成することを考えていました。

しかし問題は、3つのオブジェクトに共通のインタフェースまたは基本クラスがないことです。それらのオブジェクトは第三者コンポーネントです。私はそれらをリファクタリングすることはできません。したがって、すべてのオブジェクトに共通する契約はありません。

この場合、便利な解決方法はありますか?たぶん私が知りませんいくつかのデザインパターン?

+1

コードでサポートされているタイプは変更される可能性がありますか?つまり、ソリューションは他のサードパーティのタイプをサポートするために容易に拡張可能であるべきですか?そうでない場合は、単純に基本クラスを使用して共通の作業を行い、派生クラスを使用して任意の詳細を処理します。 –

答えて

1

それぞれ3つのカスタムクラスを作成して[私はC#についてよくわかりません]、共通の契約を実装することができます。

3

あなたはXMLSerializable抽象クラスを定義して、自分の状況に合うように思わXMLSerializableオブジェクト

1

Facadeにこれらのサードパーティのコンポーネントを適応させることAdapter patternを使用することができます。

関連する問題