ホームページ > バックエンド開発 > PHPチュートリアル > PHP デザイン パターン - オブザーバー パターン_PHP チュートリアル

PHP デザイン パターン - オブザーバー パターン_PHP チュートリアル

WBOY
リリース: 2016-07-13 09:51:48
オリジナル
738 人が閲覧しました

PHP デザインパターン - オブザーバーパターン

オブザーバー パターン (パブリッシュ/サブスクライブ パターンとも呼ばれます)。このモードでは、ターゲット オブジェクトは、それに依存するすべてのオブザーバー オブジェクトを管理し、自身の状態が変化したときに積極的に通知を送信します。これは通常、各オブザーバーが提供するメソッドを呼び出すことによって実現されます。このパターンは、イベント処理システムの実装によく使用されます。

UML クラス図:

重要な役割:

抽象通知役割 (INotifier): 通知のインターフェイス ルールを定義します。

具体的な通知者の役割 (ボス): 抽象的な通知者インターフェイスを実装し、ステータスの変更を受信するとすぐにオブザーバーに通知を送信します。

抽象オブザーバー ロール (IObserver): 通知を受信した後の操作 (更新) インターフェイス ルールを定義します。

特定のオブザーバーの役割 (JingDong): 特定の操作メソッドを実装します。

コアコード:

リーリー

クライアントコードを呼び出す:

リーリー

利点:

1. 抽象モデルには 2 つの側面があり、一方は他方に依存します。これらの側面を個別のオブジェクトにカプセル化すると、それらを個別に変更して再利用できるようになります。

2. 1 つのオブジェクトの変更により、1 つまたは複数の他のオブジェクトが変更されるため、オブジェクト間の結合が減少する可能性があります。

3. オブジェクトは、他のオブジェクトが誰であるかを知らなくても、他のオブジェクトに通知する必要があります。システム内にトリガー チェーンを作成する必要があります。オブジェクト A の動作はオブジェクト B に影響を与え、オブジェクト B の動作はオブジェクト C に影響を与えます。オブザーバー パターンを使用してチェーン トリガー メカニズムを作成できます。




www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1012064.html技術記事 PHP デザイン パターン - オブザーバー パターン オブザーバー パターン (パブリッシュ/サブスクライブ パターンとも呼ばれる)。このモードでは、ターゲット オブジェクトは、それに依存するすべてのオブザーバー オブジェクトを管理します...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート