入門
本論文では、行動パターン設計クラスですオブザーバーモードを、説明しています。多くのための適用場面。
- Observerパターンを導入します
- サンプルコード
- 概要
まず、Observerパターンを導入します
Observerパターンは、オブジェクトの行動パターンです。これは、オブジェクトの状態が変化し、それに依存するすべてのオブジェクトが通知され、自動的に更新されている主題多く、間の依存関係を定義します
このいわゆる観察モードでは、私自身の理解によると、その密告者モードです。我々は、すべてのクラスのような一部の人々はどのような小さな動きはほとんど教室の先生の密告者を飲むように常に存在しているとき、教師は密告者の人々に介してメッセージを取得します小学校で覚えていると推定しました。
第二に、サンプルコード
4つのデザインオブザーバーパターンの主な役割は、次の通り:
- 抽象オブザーバー;
- オブザーバを実装。
- 抽象オブザーバー;
- オブザーバー実現。
UMLのクラス図を以下に示します。
抽象オブザーバー:
interface ISubject {
List<Observer> addObserver(Observer observer);
void notifyObserver();
}
オブザーバを実装します:
public class SubjectImpl implements ISubject {
List<Observer> observerList = Lists.newArrayList();
@Override
public List<Observer> addObserver(Observer observer) {
return observerList.add(observer);
}
@Override
public void notifyObserver() {
for(Observer observer : observerList ) {
observer.updateSomething();
}
}
}
要約オブザーバー:
interface IObserver{
void updateSomething();
}
オブザーバーは実現します:
public class ObserverImpl implements IObserver{
@Override
public void updateSomething() {
System.out.println("被观察者做了啥,我得做啥");
}
}
使用コードのシーン:
public class Main{
public static void main(String[] args) {
IObserver observer = new ObserverImpl();
ISubject subject = new SubjectImpl();
subject.addObserver(observer);
subject.notifyObserver();
}
}
第三に、要約
オブザーバーモデルは、私たちは毎日の練習に、我々は簡単に符号拡張のためにそれを使用することができ、高い凝集と低カップリング内のコードモジュールの特性を反映して一般的に使用されるデザインパターンを投影することができます。