3

J2EEパターンセッションのファサード-「コアJ2EEパターン-ベストプラクティスと設計戦略」の本には次のように書かれています。

セッションファサードを使用して、ビジネス層コンポーネントをカプセル化し、大まかなサービスをリモートクライアントに公開します。クライアントは、ビジネスコンポーネントに直接アクセスする代わりに、セッションファサードにアクセスします。

リモートクライアントでそれが何を意味するのか知りたいですか?原因クライアントがAndroidアプリで、サーバーがJavaサーバーであるクライアントサーバーアプリケーションを作成しています。SessionFaçadeは、クライアント(Androidアプリ)に公開する必要があるものですか?2つの間の通信に必要なAPIですか?

ありがとう。

4

2 に答える 2

4

ダイアグラム

リモートクライアントには、Webブラウザ、Androidアプリ、その他のWebサービスやアプリケーションなど、何でもかまいません。

今、あなたがファサードを提供するとき。Androidアプリ(リモートクライアント)がサーバー側にアクセスするために使用するインターフェースが公開されます。このように、Androidアプリは、ビジネスロジックとデータ処理の実装の詳細について心配する必要はありません。

データにアクセスして処理するためのロジックは時間の経過とともに変化する可能性がありますが、ファサードインターフェイスが同じである限り、クライアントは何も心配する必要がありません。これはファサードの利点です。さらに、明日、WindowsまたはiPhoneでアプリを開発する場合は、同じFacadeインターフェイスを使用して、新しいコードを1行も記述せずにシステムにアクセスできます。

于 2012-08-26T17:09:13.040 に答える
0

Facadeは、サーバークライアント通信(セッション)用の簡素化されたインターフェイスを提供する必要があります。したがって、このサービス(ファサード)は、この通信のためのすべての重要なメソッドを集約する必要があります。

詳細については、デザインパターンのファサードをご覧ください。

于 2012-08-22T11:38:40.110 に答える