0

私は、オンライン コマース システム (Amazon、Play.com など) の基本的なデザイン パターンを作成するように依頼されました。このパターンはシステム全体でほとんど使用されていると感じたため、Facade パターンに集中することにしました。これは私がこれまでに持っているものです:

システム操作:

  • 注文商品

  • 在庫/在庫状況 (商品の在庫を確認します)

  • 認証 (これは、ユーザーがサインイン/登録されているかどうかを確認します)

  • 発送(商品名・お客様情報を発送先に送信)

提案された「ファサード パターン」はユーザーによって機能しますが、order_product 関数を確認/知る必要があるだけなので、他のコンポーネントはこの 1 つのアクションから「トリガー」されます。

私の質問は、このタイプのシステムで、これは使用するのに適切で適切な設計パターンですか? また、操作について、製品を購入するために必要となる可能性のある他の操作を誰か思いつくことができますか? これが私が思いつくすべてです。

誰かが助けてくれることを願っています:)

4

1 に答える 1

0

うーん、Facade は通常、レガシー コードの塊またはライブラリへの単純なインターフェイスを提供する場合にのみ関連します。「リストやマップなどのライブラリ クラスを使用するクラス」をライブラリのファサードと見なさない限り、新しいゼロからのコードを作成するために使用されることはめったにありません。

http://en.wikipedia.org/wiki/Facade_pattern

「ファサードは、クラス ライブラリなどのより大きなコード本体への単純化されたインターフェイスを提供するオブジェクトです」

あなたが説明するタスクでは、おそらくメディエーター (場合によってはファサードと見なされる可能性があります)、モデル/コントローラー/ビューアー、責任の連鎖 (セキュリティ用)、メメント (存在用)、おそらくビルダー (用) などのパターンを使用することになります。いくつかの方法で購入を表示します: HTML、PDF 請求書、電子メールなど)。

于 2012-11-20T22:49:51.397 に答える