-1

Web のファサード デザイン パターンをよく参照してきました。文字通り、ファサード Bean とは何かを想像することは明らかです。ただし、実装に関しては、デリゲート パターンと違いはありません。ファサード パターンの実装と、Java のデリゲート パターンとの違いを説明できる人はいますか?

4

2 に答える 2

2

Facade パターンは、すべての実装の詳細を隠す抽象レイヤーを提供します。委任は、他のエンティティにあなたの仕事を任せる能力です。あなたは委任します。

Java では、Facade クラスを作成し、内部で実際のコードを持つクラスのコレクションを使用できます。委任の場合、たとえばコンストラクターで他のクラスの参照を受け取り、2 番目のクラスで事前定義された API を呼び出します。

于 2013-03-01T11:48:25.937 に答える
1

サービスファサードは通常、クライアントの入り口です。粗粒度のユースケース駆動型APIを提供します。サービスファサードはトランザクションを開始し、必要に応じてDTOとの間で変換を行い、きめ細かいサービスとDAOを呼び出すことができます。

Webアプリケーションの場合、状況によってはサービスファサードの代わりに使用できるゲートウェイパターン(永続性コンテキストが拡張されたステートフルEJB)もあります。(JPAエンティティは切り離されません。)

詳細については、AdamBienによる「RealWorldJava EE Patterns-RethinkingBestPractices」という本を参照してください。http://realworldpatterns.com/

于 2013-03-01T11:49:24.987 に答える