1

5 つのレンタカー代理店があり、ある人がオンラインでレンタルすると、レンタカーの詳細を含む XML がレンタル代理店に送信され、そこでいくつかのソフトウェアによって解析され、システムに入力されます。

さて、レンタカーの XML を送信する標準的な方法がある場合、これは簡単ですが、各代理店がレンタカーを送信するための異なるインターフェイスと提携しており、各インターフェイスが異なる形式で XML を送信すると仮定しましょう。解析する必要があり、1 つの標準メソッドを持つことはできません。メソッドをオーバーライドして、複数のインターフェイスを処理できるようにする必要があります。例として、次の 2 つがあるとします。

<Rental>
<FirstName>John</FirstName>
<LastName>Doe</LastName>
<Pickup time="13:00"/>
<Date>06/06/12</Date>
</Rental>

VS

<Rental>
<Name>
<First>John</First>
<Last>Doe</Last>
</Name>
<Pickup time="13:00" date="06/06/12"/>
</Rental>

各自動車代理店がレンタルを処理するために異なるインターフェイスを使用する場合、メソッドを 5 回上書きする唯一のアプローチであり、新しい代理店ごとに再び成長する必要がありますか、またはこれに対するより簡単なアプローチはありますか?

4

2 に答える 2

0

新しいエージェンシーのためにあなたがしなければならない唯一のことが内部データプレゼンテーションへのデータの解析を処理することであるなら、どうしても非常によくできています;)。なぜビジネス的に分離するのに非常に適していると思われるものを気にするのですか?

本当に欲しければ、いろいろな方法で解決できると思います。入力を最適化するためにaiまたはannを作成するというアイデアを試してみました。しかし、どのソリューションも、独自の「parseCustomersData」関数を実装するよりも、おそらくはるかに高価です。

于 2012-05-24T20:14:14.977 に答える
0

これは、 Decorator Patternを使用するのに適したケースのように思えます。OOP を実行していると仮定すると、レンタカーのデータを提供する基本オブジェクトを作成し、データを適切にフォーマットする別のオブジェクトでラップ (または装飾) できます。さまざまなレンタカー会社ごとに個別のデコレータを作成する必要があります。

于 2012-05-24T20:06:49.003 に答える