目次
观察者模式,观察者模式类图
ホームページ php教程 php手册 观察者模式,观察者模式类图

观察者模式,观察者模式类图

Jun 13, 2016 am 09:07 AM
オブザーバーパターン

观察者模式,观察者模式类图

观察者模式

<?<span>php
    </span><span>//</span><span>定义观察者调用接口</span>
    <span>class</span><span> transfer{
        </span><span>protected</span> <span>$_observers</span> = <span>array</span><span>();
        
        </span><span>//</span><span>注册对象</span>
        <span>public</span> <span>function</span> register(<span>$sub</span><span>){
            </span><span>$this</span>->_observers[] = <span>$sub</span><span>;    
        }
        
        </span><span>//</span><span>外部统一调用</span>
        <span>public</span> <span>function</span><span> trigger(){
            </span><span>if</span>(!<span>empty</span>(<span>$this</span>-><span>_observers)){
                </span><span>foreach</span>(<span>$this</span>->_observers <span>as</span> <span>$observer</span><span>){
                    </span><span>$observer</span>-><span>update();
                }    
            }
        }
    }
    
    </span><span>//</span><span>观察者接口</span>
    <span>interface</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update();
    }
    
    </span><span>//</span><span>实现观察者</span>
    <span>class</span> listen <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to do listen<br/>'<span>;
        }
    }
    
    </span><span>class</span> read <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to read<br/>'<span>;
        }
    }
    
    </span><span>class</span> speak <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to speak<br/>'<span>;
        }
    }
    
    </span><span>class</span> write <span>implements</span><span> obserable{
        </span><span>public</span> <span>function</span><span> update(){
            </span><span>echo</span> 'now first time you need to write<br/>'<span>;
        }
    }
    
    </span><span>$transfer</span> = <span>new</span><span> transfer();
    </span><span>$transfer</span>->register(<span>new</span><span> listen());
    </span><span>$transfer</span>->register(<span>new</span><span> read());
    </span><span>$transfer</span>->register(<span>new</span><span> speak());
    </span><span>$transfer</span>->register(<span>new</span><span> write());
    </span><span>$transfer</span>-><span>trigger();
    
    
    
    
    
    
    
    
    
    
    
    
    </span>
ログイン後にコピー

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP デザイン パターン: コード エクセレンスへの道 PHP デザイン パターン: コード エクセレンスへの道 Feb 21, 2024 pm 05:30 PM

はじめに PHP デザイン パターンは、ソフトウェア開発における一般的な課題に対する実証済みのソリューションのセットです。これらのパターンに従うことで、開発者はエレガントで堅牢かつ保守しやすいコードを作成できます。これらは、開発者が SOLID 原則 (単一責任、オープン/クローズ、リスコフ置換、インターフェイスの分離、依存関係の反転) に従うのに役立ち、それによってコードの可読性、保守性、拡張性が向上します。デザイン パターンの種類 さまざまなデザイン パターンがあり、それぞれに独自の目的と利点があります。最も一般的に使用される PHP 設計パターンの一部を次に示します。 シングルトン パターン: クラスにインスタンスが 1 つだけあることを保証し、このインスタンスにグローバルにアクセスする方法を提供します。ファクトリ パターン: 正確なクラスを指定せずにオブジェクトを作成します。これにより、開発者は条件付きで次のことを行うことができます。

Phalcon フレームワークでイベント マネージャーを使用してオブザーバー パターンを実装する方法 Phalcon フレームワークでイベント マネージャーを使用してオブザーバー パターンを実装する方法 Aug 02, 2023 pm 07:25 PM

イベント マネージャー (EventManager) を使用して Phalcon フレームワークでオブザーバー パターンを実装する方法 はじめに: イベント マネージャー (EventManager) は、Phalcon フレームワークの強力で柔軟なコア機能の 1 つです。イベント マネージャーを使用すると、Observer パターンを簡単に実装して、アプリケーション内のオブジェクト間の疎結合を実現できます。この記事では、Phalcon フレームワークでイベント マネージャーを使用してオブザーバー パターンを実装する方法を紹介し、対応するコード例を示します。第一歩

PHP デザイン パターンの秘密を明らかにする PHP デザイン パターンの秘密を明らかにする Feb 21, 2024 pm 01:19 PM

1. PHP デザインパターンとは何ですか? PHP デザイン パターンは、一般的なソフトウェア開発の問題を解決するために設計された事前定義されたコード テンプレートです。これらは、コードの再利用性、保守性、拡張性を向上させる実証済みのソリューションを提供します。 2. PHP デザインパターンの種類 PHP にはさまざまなデザインパターンがあり、それぞれのパターンには特定の目的があります。最も一般的なパターンは次のとおりです。 シングルトン パターン: クラスのインスタンスが 1 つだけ存在することを保証します。ファクトリ パターン: 渡されたデータに基づいて、さまざまなタイプのオブジェクトを作成します。ストラテジー モード: プログラムが実行時に動作を変更できるようにします。オブザーバー パターン: オブジェクトがイベントをサブスクライブし、イベントが発生したときに通知を受け取ることができます。 3. シングルトンモードの例 classSingleInstance{private

Java プログラミング スキルの向上: アダプター パターンとオブザーバー パターンの実装をマスターする Java プログラミング スキルの向上: アダプター パターンとオブザーバー パターンの実装をマスターする Dec 23, 2023 am 11:52 AM

Java プログラミング スキルの向上: アダプター モードとオブザーバー モードの実装をマスターし、特定のコード サンプルが必要です。 はじめに: 日常のソフトウェア開発では、異なるクラス間の互換性の問題に対処する必要があり、さまざまなユーザー インターフェイスを実装する必要もあります。 イベントの監視と処理。アダプター パターンとオブザーバー パターンは、これらの問題を効果的に解決できる 2 つの一般的に使用される設計パターンです。この記事では、アダプター パターンとオブザーバー パターンの実装を詳しく紹介し、読者の理解を深めるために具体的な Java コード例を示します。 1つ、

Javaフレームワークにおけるオブザーバーパターンの実装方法は何ですか? Javaフレームワークにおけるオブザーバーパターンの実装方法は何ですか? Jun 03, 2024 pm 05:05 PM

Java フレームワークのオブザーバー パターンは、インターフェイスと抽象クラスを通じて動作を定義します (1)。サブジェクト クラスとオブザーバー クラスは、管理と応答の動作を実装します (2)。サブジェクトは、サブスクリプション メソッドとキャンセル メソッドを提供し、オブザーバー コレクションを維持し、オブザーバーに通知します (3)。この例では、Subject はオブザーバーを管理してイベントをトリガーし (4)、ConcreteObserver はイベントに応答します (5)。

PHP 入門: オブザーバー パターン PHP 入門: オブザーバー パターン May 20, 2023 am 08:21 AM

デザイン パターンは、現代のソフトウェア開発で広く使用されている概念です。デザイン パターンは、ソフトウェア システムに見られる一般的なソリューションであり、開発者が複雑なソフトウェア アプリケーションをより効率的に構築できるようにテストされ証明されています。オブザーバー パターンは最も一般的なデザイン パターンの 1 つであり、PHP 開発者が習得する必要がある重要な概念でもあります。この記事では、Observer パターンの概念と実装を紹介し、PHP アプリケーションでの使用方法を示します。オブザーバーパターンとは何ですか?オブザーバーパターンは、

PHP のオブザーバー パターンとその使用法を例とともに説明 PHP のオブザーバー パターンとその使用法を例とともに説明 Jun 09, 2023 am 08:53 AM

PHP のオブザーバー パターンとその使用例の説明 オブザーバー パターンは、オブジェクト間に 1 対多の依存関係を確立するために使用されるソフトウェア設計パターンです。このモードでは、オブジェクトの状態が変化すると、そのオブジェクトに依存するすべてのオブジェクトが通知され、自動的に更新されます。 PHP プログラミングでは、オブザーバー パターンは、コードの最適化と簡素化、コードの読みやすさと保守性の向上に役立つ一般的に使用される設計パターンです。以下では、PHP のオブザーバー パターンの基本的なメソッドを紹介し、その使用法を例を示して説明します。オブザーバー パターンの基本

PHP オブジェクト指向プログラミングにおけるオブザーバー パターンの詳細な分析 PHP オブジェクト指向プログラミングにおけるオブザーバー パターンの詳細な分析 Aug 13, 2023 pm 06:34 PM

PHP オブジェクト指向プログラミングにおけるオブザーバー パターンの詳細な分析 オブザーバー パターンは、ソフトウェア システムのオブジェクト間の疎結合を実現するためによく使用される設計パターンです。その中心的な考え方は次のとおりです: オブジェクト (オブザーバーまたはサブジェクトと呼ばれます) は、それに依存するオブジェクト (オブザーバーと呼ばれます) のリストを維持します。監視されているオブジェクトの状態が変化すると、すべてのオブザーバーに自動的に通知されます。このようにして、オブザーバー パターンはオブジェクト間の 1 対多の関係を実装できます。オブジェクトが変更されると、関連するすべてのオブジェクトに通知され、

See all articles