さまざまなサードパーティAPIと相互作用するクラスライブラリを構築しています。ファサードパターンを使用して、複雑で紛らわしい呼び出しへのアクセスを簡素化し、ファクトリパターンを使用して正しい実装を返しました。私は現在、実装の1つを構築しようとしていますが、エレガントなデザインを考えることはできません。
私が構築している実装では、URLを構築する必要があります(これはURIBuilderを介して行っています)。次に、URLを「実行」する必要があります。次に、Xmlの結果をクラスに逆シリアル化します。
HttpClientを使用して、作成したURIを使用してAPIを呼び出すことを計画していますが、クラスの構造がわかりません。私が考えたオプションは次のとおりです。
私の実装の基本クラスなので、を介して呼び出すことができます
base.InvokeURI(Uri myUri)
。複数の実装で使用できるようにする分離クラス
また、逆シリアル化がどこにあるべきかわかりません。