0

特別なサーバー環境へのアクセスを提供するAPIを使用しています。このAPIには、そこから取得できるさまざまなデータオブジェクトがあります。たとえばAPICar

ここで、そのデータオブジェクトのすべての情報を含む「自分の」データオブジェクト(MyCar)が必要ですが、一部のプロパティを除外するか、拡張するか、単に一部の名前を変更したいと思います。

これは、JSON駆動のクライアントアプリケーションでこれらのデータオブジェクトが必要なためです。したがって、誰かが上記のAPIを変更し、プロパティの名前を変更すると、クライアントアプリケーションはすぐに壊れます。

私の質問は:

このようなオブジェクトをコピーするためのベストプラクティスまたはデザインパターンはありますか?1つのオブジェクトがあり、それを別のクラスの別のオブジェクトに転送したい場合のように?「AdapterFactory」と呼ばれる日食でそのようなものを見たことがあり、それが広く使われているものかどうか疑問に思いました。

より明確にするために:私は持っています ObjectA、そして私は必要ObjectBです。ObjectAAPIに由来し、そのクラスは頻繁に変更される可能性があります。ObjectAに変換できるメソッド、オブジェクト、またはクラスが必要ですObjectB

4

1 に答える 1

3

デザインパターンアダプタをお探しだと思います

実際には、クラスAのインスタンスをクラスBのインスタンスでラップするだけで、別の使用方法/別のタイプを提供します。

「私は思う」というのは、コピーの問題について言及しているので、永続性/伝達のことほどクラス/タイプのことではないかもしれません。

状況によっては、動的プロキシにも関心があるかもしれませんが、これはJavaの機能です。

于 2013-01-18T07:54:24.040 に答える