ファサード パターンのドキュメントでは、関連するパターンの説明に次のステートメントが表示されます。
「Abstract Factory を Façade と共に使用して、サブシステムに依存しない方法でサブシステム オブジェクトを作成するためのインターフェイスを提供できます。」
このように、Façade で Abstract Factory を使用するにはどうすればよいでしょうか?
ファサード パターンのドキュメントでは、関連するパターンの説明に次のステートメントが表示されます。
「Abstract Factory を Façade と共に使用して、サブシステムに依存しない方法でサブシステム オブジェクトを作成するためのインターフェイスを提供できます。」
このように、Façade で Abstract Factory を使用するにはどうすればよいでしょうか?
それぞれのパターンをまず独立して考えてみると、自分でつながりを見つけることができるかもしれません。まず、Abstract Factory パターンについて考えてみましょう。この作成パターンは、オブジェクトのファミリを作成できるインターフェイスの作成に関係しています。たとえば、フォームの作成方法を示すインターフェイスを作成します。次に、具体的な実装者がいます(実装者はさまざまなタイプのボタン、タイトルなどを作成します)。
作成されるオブジェクトのファミリが複雑なサブシステムを形成する場合、これらすべてが非常に複雑になる可能性があります。これで、Facade パターン (構造パターン) を使用してこの複雑さを処理し、フォーム タイプとして引数を受け入れ、すべてのボタン、タイトルを作成し、Facade のユーザーのためにそれらの場所などを設定する、より高いレベルのインターフェイスを作成できます。そのため、複雑なサブシステムの詳細を処理/知る必要はありません。
Abstract Factory を使用して、Facade パターンのインターフェイスを作成できます。抽象ファクトリ 具象クラスを指定せずに共通のテーマを持つ個々のファクトリ。一方、ファサードはシステムの複雑さを隠し、クライアントがシステムにアクセスできるインターフェイスをクライアントに提供します。より明確な画像を取得するには、このリンクに従ってください。ファサードのベスト プラクティス