定義オブザーバー パターンは 1 対多の依存関係を定義し、複数のオブザーバー オブジェクトが同時にサブジェクト オブジェクト (通知オブジェクト) を監視できるようにします。サブジェクト オブジェクトは、監視対象オブジェクトの変更を監視すると、すべてのオブザーバー オブジェクトに通知して、各オブザーバー オブジェクトが自身を更新できるようにします。 ここではいくつかの役割が関与しており、それぞれに次のような機能があります。
2. 使用シナリオ1つのオブジェクトを変更すると、同時に他のオブジェクトも変更する必要があり、変更する必要があるオブジェクトの数を知る必要がない場合 3. 例を挙げる概念の説明がわかりにくくて理解しにくい場合は、日常生活からの例を挙げて説明してください。 シナリオ 1: オフィスビル内のパソコンの前。プログラマーの一団は、上司が出張中であることを利用し、コンピューターで NBA の試合を観戦しながら、時折興奮して叫んでいた。ちょうどそのとき、出張から帰ってきた上司が偶然彼らと遭遇し、気まずい状況になってしまいました。 解決: 会社でサボっていたところ、上司に見つかってしまうのを避けるために、数人がフロントの女性に賄賂を贈る計画を立てました。上司が再び会社に来た時、その女性はすぐにプログラマーたちに知らせ、仕事に戻るように頼みました。 シナリオ2: オフィスビル内のパソコンの前。プログラマーの一団は、上司が出張中であることを利用し、コンピューターで NBA の試合を観戦しながら、時折興奮して叫んでいた。この時、上司が出張から帰ってきました。フロントの女性はボスが戻ってくるのを見て、すぐに試合を観戦していた男たちに知らせました。この時、若者たちはすぐに仕事モードに切り替わりました。 シナリオ 2 では、オブザーバー パターンを使用します。上司が戻ってきたら、プログラマーはパドリング ステータスを変更する必要があり、フロント デスクの女性がそれを通知する責任があります。
| ||||||||||||
<<: MySQL 挿入時間の 8 時間の違いの問題の解決方法
>>: CentOS8でyumソースを変更した後にウェアハウスキャッシュの同期に失敗する問題の詳細な説明
質問会社がサーバーを移行した後、デフォルトで作成された docker0 ブリッジが会社の外部ネットワ...
HTML5 では、ヘッダー、フッター、ナビゲーションなどのセマンティック タグが追加されているため...
ポーリングアルゴリズムの紹介多くの人が職場で nginx を使用しており、その設定に精通しています。...
目次1. プロセス制御2. シーケンシャルプロセス制御3. 分岐フロー制御if文1. 支店構造2. ...
1. MYSQLに接続するフォーマット: mysql -h ホストアドレス -u ユーザー名 -p ...
Dockerfile は、イメージをビルドするために使用されるテキスト ファイルです。テキスト コン...
1. MySQL独自のストレステストツールMysqlslap mysqlslap は、mysql に...
目次1. 定義と使用1.1 定義1.2 使用2. 複数のファイルに分割する3. エイリアス序文: T...
<テンプレート> <div class="demo">...
序文先ほどのプロジェクトを参考にすると、環境は整いました。プロジェクトの準備と検証の段階で、問題が発...
この記事の例では、WeChatアプレットで写真をアップロードするための具体的なコードを参考までに共有...
CentOS にはデフォルトで MariaDB がインストールされていますが、これは MySQL の...
目次範囲グローバルスコープ関数のスコープもし、スイッチ、のために、その間ブロックスコープスコープチェ...
1. はじめに不明な値または部分的に既知の値をフィルタリングする場合は、like 演算子を使用でき...
目次一方向データフローの説明Vue2.x の使用法親コンポーネントに変更を通知するイベントのフォーム...