Pozorovatel (observer)

Použití

Vzor Pozorovatel lze použít v následujících situacích:

  • Abstrakce má dva aspekty jeden závisí na druhém. Jejich zapouzdření do zvláštních objektů je umožňuje nezávisle měnit a znovupoužívat.
  • Změna jednoho stavu vyžaduje změnu jiných a jejich počet neznáme.
  • Objekt má upozorňovat ostatní objekty, aniž by o nich cokoli předpokládal, nechceme aby byly tyto objekty těsně spojeny.

Struktura

[G2:492 n=1 size=400]

Součásti

Subject
Zná své pozorovatele. Subject může pozorovat libovolný počet objektů Observer.

Poskytuje rozhraní pro připojování a odpojování objektů Observer.
Observer
Definuje aktualizační rozhraní objektů, jež mají být upozorněny na změny subjektu.
ConcreteSubject
Ukládá stav vlivu do objektů ConcreteObserver.
Posílá upozornění svým pozorovatelům v případě změny svého stavu.
ConcreteObserver
Udržuje odkaz na objekt ConcreteSubject.
Ukládá stav, který má zůstat konzistentní se stavem objektu.
Implementuje aktualizační rozhraní objektu Observer, které udržuje jeho stav konzistentní se stavem subjektu
PřílohaVelikost
observer_struktura.gif12.42 KB

Poslat nový komentář

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.
  • Allowed HTML tags: <img> <a> <em> <strong> <cite> <code> <var> <abbr> <acronym> <kbd> <ul> <ol> <li> <dl> <dt> <dd> <blockcode> <h1> <h2> <h3> <h4> <h5> <table> <tbody> <thead> <tfoot> <tr> <td> <th> <p>
  • Řádky a odstavce se zalomí automaticky.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>.
  • You may link to Gallery2 items on this site using a special syntax.

Více informací o možnostech formátování

CAPTCHA
Je mi to moc líto, ale kvůli spamovacím robotům jsem musel zavést toto nepopulární opatření
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.