0

私は当初、問題を解決するために C# 3.0 でオブザーバー パターンを実装するつもりでしたが、まったく同じ方法で実装することはできませんでした。

私の問題は、メッセージを投稿できるユーザーがいる Web アプリケーションがあることです。通知は他のユーザーに直接送信されるのではなく、統計オブジェクトが更新される分散キャッシュに送信され、ユーザーは統計をチェックして、更新が必要かどうかを決定できます。

私は現在、誰がメッセージを投稿しているか、どのように投稿しているかに基づいて、複数の Update() メソッドを実装する必要がある IObserver インターフェイスを持っています。

メディエーター パターンも調べましたが、メディエーターのインスタンスには現在ログインしているユーザーのリストがないため、適切ではないと思います。

より適切な別の確立された設計パターンがあるかどうか、または現在の Observer パターンを自分のニーズに合うように構築するだけでよいかどうかを考えています。

ありがとう

4

3 に答える 3

6

イベント/デリゲートを介して実装できませんか? これは、C# およびその他の .Net 言語で Observer パターンを実装する標準的な方法です。

于 2009-07-28T17:47:56.200 に答える
3

.Net イベントは、変装した単なるオブザーバー パターンではありませんか? :) Statistic などのクラスを作成し、そのクラスに OnUpdate() イベントを公開させることができます。

于 2009-07-28T17:49:27.723 に答える
1

C# はデザイン パターンを採用し、言語の第一級市民にしました。提供されているものを単に使用しないのはなぜですか?あなたの例には、C# の組み込みイベント構造では実行できないものは何もありません。

于 2009-07-28T17:52:32.493 に答える