外観モードの説明
説明: アピアランス モードは、サブシステムまたはプログラムの複雑な構成のために提供される高レベルのインターフェイスです。
を使用すると、基礎となるプログラムまたはシステム インターフェイスに簡単にアクセスできます。外観モードは、私たちが頻繁に遭遇するモードです。私たちが関与する機能には、複数のサブインターフェイスまたはサブシステムが必要になる場合があり、機能の 1 つは、複数のサブインターフェイスのうちの 1 つだけを必要とする場合があります。順次パッケージ。ビジネス機能がサブインターフェイスまたはサブシステムに直接対応する場合、開発者はビジネス プロセスがどのように進むか、その順序などを理解する必要がある場合があります。これには開発者がビジネスを理解する必要があり、クライアントのプログラミングも非常に複雑になります。
使用したいメソッドを具体的にカプセル化する層またはクラスがここにある場合、クライアント関数はこの中間層クラスと対話するだけで済みます。中間層クラスの対応するメソッドは、理解している関連開発者によって編成されます。カプセル化を行うと、プログラムは非常に単純になります。プログラマは、この関数に必要なメソッドを知るだけで済み、内部ロジックを知る必要はありません。
この中間層のクラスをアピアランスクラスと呼びます。これがアピアランスモードの考え方です。
シナリオの例:
1> マスター スイッチを例に挙げます。このマスター スイッチは、家のドアの照明や廊下のいくつかの照明を制御したり、テレビや冷蔵庫などへの電源を制御したりできます。 「ON」を押すと、すべてに電気が流れ、さらには直接光と熱が発生します。電気を発生させるためにメインスイッチのボタンがどのように出てくるのか、どのように押したらよいのかを知る必要はありません。とにかく押すだけで電気がつきます。
これらの照明、テレビなどは、私たちが使いたいインターフェースや小さなシステムです。このメインスイッチは私たちの外観クラスであり、それに直面して直接操作できます。
2> いくつかの機能部門がある会社のようなもので、上司は仕事のさまざまな側面の実行状況を知りたいとき、従業員にその状況を尋ねます。適切な人であれば、上司に直接答えることができます。この人に責任がない場合、その人は上司に、ああ、これの責任は誰にあるのかを伝え、上司はその人に、それがどれほど面倒かを聞きに行かなければなりません。 。
各部門に責任者がいる場合、上司は状況を理解するために直接その責任者に行くだけで済みます。上司は、責任者がこれをどのように知っているかを気にする必要はありません。彼は次の 1 つだけを知る必要があります。 2、3 件の状況と進捗状況を確認するだけです。
ソースコードの例
次に、2 番目のインスタンスのシナリオに従ってソース コードを実装します。
1. いくつかの部門の機能:
部門 1 (ビジネス部門):
第 2 部門 (研究開発部門):
上記は、各部門の責任者が上司に答えるべき質問です。
次に、上司が尋ねたい質問を整理するための外観クラスを作成します。
その後、上司は目の前にいるマネージャー 2 人を呼び、質問を始めました。
その他の指示
外観モードを使用すると、クラス間の依存関係が不要になるように、A に B を含める必要があり、B に A を含める必要があります。これは、クローズド変更の原則に違反します。中間層のアピアランス クラスのパッケージ化により、インターフェイス呼び出しがより単純になり、サブインターフェイスまたはサブシステム オブジェクトを使用した呼び出しがより自由かつ組織化されます。
外観パターンは、アーキテクチャ システムのパターン定義でよく使用され、多くの場合、利用可能なビジネス インターフェイスを整理するためにファサード レイヤーを追加します。