Startseite > Archiv > Vom Observer Pattern zum Event Pattern

Vom Observer Pattern zum Event Pattern

dotnetpro 12/2004 Von Walter Doberenz erschienen in dotnetpro 12/2004 auf Seite 24
Code: A0412Observer
4 Bewertung(en):

Beobachten, was passiert Durch den Einsatz des Observer Patterns lassen sich die Bereiche GUI und Anwendungslogik voneinander entkoppeln. Darüber hinaus lässt sich dieses Pattern überall dort einsetzen, wo mehrere Klassen zusammenarbeiten sollen. dotnetpro erläutert die Grundlagen des Observer Patterns und demonstriert, wie sich diese Architektur unter .NET mithilfe von Events besonders einfach umsetzen lässt.

Artikel Download

Als Abonnent können Sie den gesamten Artikel als PDF abrufen und die zugehörigen Quelltexte direkt downloaden.

Sie sind bereits Abonnent? Dann registrieren Sie Ihr Abonnement jetzt online und greifen Sie sofort auf das komplette Artikelarchiv zu.

Einzelheft-Bestellung

Sie interessieren sich für diesen Artikel und haben noch kein Abonnement? Dann bestellen Sie doch einfach diese Ausgabe der dotnetpro als Einzelheft.

Abo-Bestellung

Probeabo
Wenn Sie die dotnetpro kennenlernen wollen, ist das Probeabo genau richtig für Sie. Lesen Sie die aktuelle sowie die kommende Ausgabe zu einem besonders günstigen Preis.








Abo
Wenn Sie die neue Ausgabe der dotnetpro als Erster lesen wollen, dann liegen Sie mit einem Abo genau richtig – zwölf Mal pro Jahr druckfrisch in Ihrem Briefkasten und das noch bevor das Heft am Kiosk erhältlich ist.

Sie finden diesen Artikel interessant? Dann helfen Sie anderen ihn zu finden und kicken Sie ihn bei www.dotnet-kicks.de!

Tags

_ByVal   _halt   _max   _number   _observers   _random   024_Observer2_mlo_ws_kf_ws03   1000   1995   1NumberGeneratorNumberChangedDigitObserverUpdateDisplay   2002   2004   200411   200412   200425   200427   200429   200431   200435   200437   2004www   2412   2612   2812   2GraphObserverUpdateDisplay   3012   3212   3612   3MaximumChangedDigitObserverUpdateMaximum   4GraphObserverUpdateMaximum   5DigitObserverMaximumChangedNumberGeneratorUpdateMaximum   6GraphObserverMaximumChanged   A0412Observer   Abbildung   Abbruch   aber   abgeleitet   Abgrenzung   Ablauf   Abmelden   abmeldet   abschließende   Absicht   absolut   Abspeichern   abstrakt   abstrakte   abstrakten   Abstraktion   abzuschließen   Access   achten   Achtung   AddHandler   Addison   AddressOf   agieren   agiert   agramm   agramme   Ähnliches   akkurate   Aktienkurse   Aktion   aktiv   aktuel   aktuelle   aktuellen   aktuellJetzt   alle   allein   allem   allen   aller   Allerdings   Alles   allge   allgemein   also   alternativ   analog   Analoganzei   Ände   andere   anderem   anderen   anderenfalls   Andererseits   Ändern   anders   ändert   Änderun   Änderung   Änderungen   Änderungsde   Änderungsin   Änderungsinfo   Anfang   Anfangshöhe   Anforderungen   angehalten   angepasst   angeschlossen   angezeigt   anhand   Anhieb   anonymer   Anschein   anschließend   Anschluss   Ansonsten   Anstatt   anstelle   Antwort   Anweisungen   Anwen   anwenden   Anwendung   Anwendungsentwick   Anwendungsgebiet   Anwendungslogik   Anzahl   Anzeige   Anzeigen   anzupassen   anzuzeigen   Application   Applika   Applikation   äquiva   Arbeit   arbeitet   Arbeitsweise   Architektur   Ärger   Argu   argument   Argumente   Array   ArrayList   auch   aufbauenden   aufeinander   auffällt   Aufgabe   Aufgabentrennung   aufgeführt   aufgehen   aufgelöst   aufgerufen   Aufruf   aufrufenden   Aufrufs   auftreten   auftritt   Aufwand   ausdemNamen   Ausfüh   ausführt   ausgeführt   ausgelöst   ausgelösten   ausgeruht   ausgezeichnet   auslösen   auslöst   ausschließlich   äußerst   Austauschbarkeit   AuswertungenModerne   automatische   Autor   Balken   Balkendiagramms   Balkens   barkeit   bars   Basic   basierend   basiert   Basis   Basisklasse   beachten   Beachtung   Bedarf   bedeu   bedeuten   bedeutende   bedeutet   Bedeutung   Bedienoberfläche   bedient   beeindruckendste   Beenden   beendet   befä   befähigt   Beginn   begonnen   begrüßt   behandeln   Beide   beiden   beider   beim   Beispiel   Beispielanwendung   Beispielapplikation   Beispielim   Beispielimplementierung   Beispielimplementierungen   beispiels   beispielsweise   Beitrag   bekannt   bekannten   bekanntlich   beleuchtet   belie   beliebi   bemerkens   Benach   Benachrichti   benachrichtigen   benachrichtigt   Benachrichtigung   benannt   benden   benö   benötigt   benötigten   Benut   benutzen   Benutzer   Benutzers   Benutzerschnittstelle   benutzt   Benutzung   beob   beobach   beobachtbaren   beobachten   beobachtet   Beobachtung   Beobachtungsprozess   berChanged   berChangedHandler   Bereich   Bereiche   bereit   bereitgestellte   bereits   bereitstellt   berGenerator   beruhende   beseitigen   besitzt   besondere   Besonders   bespro   bestehen   bestehenden   besteht   bestellen   besten   bestimmte   bestimmten   bestimmtes   beteiligt   beteiligten   Bevor   Beweis   Bezeichnen   Bezeichnung   beziehen   bezieht   Beziehung   Beziehungen   beziehungsweise   bezogen   bezogene   Bezug   bietet   bige   biger   binden   Bindung   bishe   Bisher   bisherigen   bleiben   Bleibt   Blick   blitzschnell   Blitzschnelles   Blockieren   Boolean   Borland   breite   bringt   buch   Buchstabens   Button1   Button1_Click   ByVal   Callbacks   CancelEventArgs   Carl   catch   Changed   ChangedEventArgs   Chaos   CheckBox1   CheckBox1_CheckedChanged   CheckBox2   CheckBox2_CheckedChanged   Checkboxen   Checked   CheckedChanged   chen   chenden   class   ClassAbbildung   ClassListing   Click   Clock   Closing   Code   Codes   Collection   color   com10   ComponentModel   Const   Container   Containers   Convert   crosoft   CType   dabei   daher   damit   Danach   dank   dann   darin   darstel   darstellt   Darüber   darunter   dass   Daten   Datenbank   datenbankunabhängigüja   davon   dazu   de12   deaktiviert   deklarieren   deklariert   deklariertes   Delay   Dele   Delegate   Delegates   delegieren   Delphi   demonstrieren   demonstriert   denn   dere   deregistrieren   deregistriert   Deregistrierung   deren   derenZiel   derung   deshalb   Design   dessen   Detail   deut   deutlich   deutlicht   deutschsprachige   Diagramm   Diagramme   diagrammen   dienen   Dienst   dienten   dieRollen   dies   diese   diesem   diesen   dieser   dieses   Digit   digital   DigitObser   DigitObserver   DigitObserverFormular   Dimension   direkt   Doberenz   doch   DoEvents   doing   doko   Dort   dotnetpro   Doug   dows   drei   drit   dritten   dritter   drücken   drückt   dung   durch   durchaus   durchgeführt   durchläuft   dürfte   duzieren   Each   Echt   Echtzeit   Effekte   effektiveres   effiziente   eifrig   eigenen   eigenes   Eigenschaft   eigentlich   eignen   eignisdeklaration   eignismodells   eignisse   eine   einem   einen   einenWebdienst   einer   eines   einfach   Einführung   Eingabe   Eingabezwecke   eingeben   eingeführt   eingesetzt   Einheit   einheitlichen   einleitenden   einmal   Einsatz   einsetzen   einstellen   einsti   einzelnen   einzige   einziger   einziges   einzuhalten   elegante   Elektrotechnik   Element   Elements   eliminiert   else   empfangenen   empfangenes   empfiehlt   enabled   Enter   entfallen   entfernen   entfernt   Entfernung   Entflechtung   Entgegennahme   enthält   enthaltenen   entkoppeln   entkoppelt   entspre   entsprechen   entsprechend   entsprechende   entsprechendes   entspricht   Entstehung   Entwick   Entwickeln   entwickelt   Entwickler   Entwicklersoftware   Entwicklerteam   Entwicklung   Entwicklungs   Entwurf   Entwurfsmus   Entwurfsmuster   Environment   erben   erbt   Ereignis   ereignisauslösenden   Ereignisauslöst   Ereignisklasse   Ereignismodell   Ereignisnamen   Ereignisse   Ereignissen   Ereignisses   erfolgt   erforder   erforderlich   erfordert   erfüllen   ergänzen   Ergebnis   Ergüsse   erhalten   erhöht   Erich   erkannt   Erkenntnis   erklärt   erlau   erlauben   erlaubt   erläutern   erläutert   erleichtert   ermög   ermöglichen   ermöglicht   erneuern   erprobten   erreichen   erreicht   erscheinen   erscheint   erst   erste   erstellen   ersten   ertriebToolsComponents   erwähnten   erwarten   erwartungsgemäß   erzeugen   erzeugt   erzeugte   erzeugten   Erzeugtes   Etappen   etwa   euphorischen   Event   EventArgs   EventHandler   Events   EventsArg   Exception   existieren   Existiert   Experi   Exploring   face   faces   Fall   fallen   Fällen   falls   fallszahl   fallszahlen   falsch   false   Fast   Fazit   fehlschlagen   feinen   Felder   Fens   Fenstern   ferenz   fernanzeige   fest   feste   feststellen   feuert   fiktiv   FillRectangle   Finale   finden   Firmenberater   flechtung   flexibles   folgende   Folgenden   folgt   Form   Form1   Form1_Closing   Form1_Paint   Form1Hauptformular   formale   formalen   formatik   formationen   Forms   Formular   Formulars   Fortschritt   Fortsetzung   Frage   Frame   Framework   Frameworks   freiberuflicher   fremde   fröhlich   fügen   fügung   führen   führung   fungie   fungieren   fungiert   Funktion   Funktionalität   funktionieren   funktioniert   Funktionsprinzip   Funktionszeiger   fyObservers   gäbe   Gamma   gangenheit   gängerversion   ganz   garantierten   gates   geändert   gebastelte   geben   Gebrauch   gebunden   gebung   geführt   Gegensatz   gegenüber   gehabt   gehört   geht   Geisterhand   gekommen   gemein   genaue   gene   generator   generieren   genug   genügen   genügt   genutzt   gepackt   gerade   geren   gering   gern   Geschäftslogik   gesetzt   gestartet   gestoppt   gestrichelten   GetObservers   GetReturn   gewähr   gewährleisten   gewährleistet   gewichtige   gewonnen   geworden   gewünschten   gezeigt   gezeigten   gibt   gilt   gisterObserver   gitObserver   gleich   Gleiches   gleichkommt   gleichzeitig   grafische   grafischen   grafischer   gramm   grammierbücher   Graph   Graphics   GraphOb   GraphObserver   GraphObserverFormular   gravierendste   große   Großschreibung   größte   Grund   Grundkon   Grundlage   Grundlagen   grundsätzlich   gung   haben   halter   handelt   Handler   Handlern   Handles   handlung   hängende   Hanser   harten   Hashtable   hatte   hatten   häufig   Hauptformular   Hauptformulars   hauptsächlich   Heft   heißt   Herausforderung   herausgeputztes   herausragende   herrlich   herrscht   hervorge   heutige   hier   hierzu   higt   Hilfsmethode   hilft   hinaus   hingegen   hinreichend   hinzu   Hinzufügen   hinzuge   hinzugefügt   hinzuzufü   hinzuzufügen   hinzuzufügende   hoben   Höhe   holt   horizontalen   idealen   identisch   Ihnen   Ihre   ihren   Ihrer   Ihres   Illustration   immer   imple   Implemen   Implementie   implementieren   implementierenden   implementiert   implementierte   implementierten   Implementierung   ImplementierungdesMicrosoft   Implementierungen   Implementierungsaufwand   Implements   indem   Informa   Information   Informationen   informiert   Inherits   inkl   innerhalb   Innovation   Insider   instan   Instanz   Instanzen   Instanzenvariable   Instanzenvariablen   instanziert   Instanzlegt   Integer   intensiven   inter   interagieren   Interaktion   Interaktionen   interessantesten   Interesse   interface   Interfaces   internes   Internetadresse   interpre   Interpretationen   IObser   IObservable   IObservableInterface   IObserver   IObserverInterface   irgendeine   Jahren   ject   Jede   jeden   jeder   jedes   Jefrey   jekt   jektorientiertes   jekts   jetzt   jeweiligen   jeweils   käme   kann   kapselt   kation   kein   keine   keinerlei   keines   Kenntnis   KeyCode   KeyEventArgs   KeyUp   klare   klas   Klasse   KlasseBeschreibung   Klassen   Klassendia   Klassendiagramm   Klassenebene   Klasseninstanz   Klasseninstanzen   Klassenreferenz   Klassenzusammenstellung   klassische   kleinere   Klick   knapp   Koautor   kommen   Kommentars   kommentiert   Kommt   kompakter   Kompilieren   komplett   kompletten   Komponente   konforme   konkreten   können   konstant   Konstanten   Konstrukt   Konstruktor   kontrollierte   Kontrollkästchen   Konven   Konvention   Konventionen   Konzept   Kopplung   Kowalski   kret   kreten   kürzer   Label   Label1   Länge   länger   lassen   lässt   Lauf   laufende   läuft   Laufzeit   Learning   Lebensdauer   lediglich   leer   leeren   legate   Legen   leichte   leidenden   leistet   leistungsfähigere   lent   Lesbarkeit   Lesezugriff   letzt   letzte   letztendlich   letzteres   lich   liche   licht   liefert   liegen   liegend   liegenden   liegender   liegt   Linie   Linien   Linker   lisierung   Liste   Listing   Listings   logi   logische   long   Loop   lösen   Luft   lung   Lust   macht   maximale   maximaler   Maximalwert   Maximalwertes   maximum   MaximumChanged   MaximumChangedEventArgs   MaximumChangedEventArgshinzu   MaximumChangedEventArgsKlasse   MaximumChangedHandler   Maximums   Maximumwertes   Mechanis   mehr   mehrere   mehrerer   Mein   meist   meisten   ment   menten   mentieren   mentiert   Menüleiste   Message   MessageBox   Metho   Methode   Methoden   Methodenaufrufe   Microsoft   Mindesthöhe   Minimum   miteinander   mithilfe   mittels   mobeispiel   möchte   modell   Modelle   Modifi   Modifikation   möglich   Möglichkeit   Morgen   msdn   Multicast   münden   mürrisch   muss   müssen   müsste   müssten   Muster   MustInherit   MwSt   MyBase   nach   nacheinander   Nachkomme   Nachrichtenaustausch   Nachteil   nachvollzogen   nahe   Name   Namen   Namens   Namensgebung   Namenskonvention   Namenunddie   Natur   natürlich   nauer   nehmen   nennenden   nerator   neue   neuen   neues   Next   nicht   nichts   nipulieren   noch   nothing   Noti   Notification   Notify   NotifyObser   NotifyObservers   notwendige   NrSubjektEreignisObserverHandler   ntwicklung   Number   numberChanged   NumberChangedEventArgs   NumberChangedEventArgsKlasse   NumberChangedHandler   NumberDelegate   NumberGe   NumberGenera   NumberGenerator   NumberGeneratorGeschäftsmodell   NumberGeneratorKlasse   nutzerschnittstellen   nützlich   nutzt   obachtbar   Oberer   Oberflä   Oberfläche   obige   obigen   Obiger   object   Objekt   Objekte   Objekten   Objektkategorien   objektorientierter   Objekts   Objektva   Obser   Observer   observer1   observer2   Observern   Observers   obwohl   oder   offen   öffnen   Ohne   OnMaximumChanged   OnNum   OnNumberChan   OnNumberChanged   OnPaint   Operationen   Oriented   orientierter   Outlook   Overrides   PaintEventArgs   Parameter   Parametern   Parameters   parenz   Passagen   passen   Pattern   Patterns   pause   Pausen   perfekt   Pfeile   phase   Pixel   Platz   platziert   plementie   plementierungen   plikation   Pointer   Position   potenziell   Präfix   präsentiert   Praxis   Press   private   Problem   Probleme   professionelle   Professor   Profiwissen   Programm   Programmierer   Programmierers   Programmversionen   Projekt   Projekts   Projektverzeichnis   Property   protec   protected   public   Purdy   Quasi   Quell   Quellcode   Quellcodes   Quelle   quenzdiagramm   RaiseEvent   Randabstand   Random   rchiv   ReadOnly   reali   Realisierungen   rechten   redu   Referenz   Referenzen   Refresh   regis   Register   RegisterObserver   registration   Registrie   registrieren   registriert   registrierten   Registrierung   Regler   Reihenfolge   Rein   reinen   relativ   remove   RemoveHandler   repräsentiert   Rest   retischen   return   Reusable   revolutionär   riable   Richter   richtig   richtigung   riert   rigen   ringfügig   Rolle   Rollen   Rücknah   rückwirkungsfrei   ruft   Rumpfcodes   rung   rungen   sammensetzen   Satz   sauber   saubere   sauberer   Schaltfläche   Schaltzentrale   schauen   sche   scheinbaren   scheint   schen   Schichten   schied   schiedenartige   schiedenen   Schlafmangel   Schleife   schließen   schließendeVersion   Schluss   schlüssige   schnelle   schnitten   Schnittstellen   Schnittstellentypen   schon   schreibt   schrieben   Schwerpunkt   Schwierigkeiten   sechs   sehen   sein   seine   seinem   seinen   seiner   Seit   Seite   seitens   selbst   selbstständig   senbibliothek   sender   senkrechte   separate   separates   Sequenz   Sequenzdi   Sequenzdia   Sequenzen   sern   Server   Servern   setzt   sevGraph   SEVoftware   Show   sich   Sicht   Sichtbarkeit   Sichtbarkeitder   siehe   sierend   siert   signa   Signatur   Signaturen   sind   sinn   sion   Sleep   Sobald   sofern   sofort   Software   solche   solchen   solches   SolidBrush   soll   sollen   Sollte   somit   sondern   sonders   sowie   sowohl   soziationen   später   spätestens   speichern   spezielle   spezielles   spezifischen   Spiel   spielanwendung   spielen   spiels   spielt   sprachen   springt   sprüngliche   Stacked   Stand   Standard   ständig   stanz   stanzen   stanzieren   stanziert   Stapel   Start   starten   startet   Startformular   Startformulars   Startphase   Startroutine   Statis   StatisticObserver   statistische   stattlich   steckt   stehen   steht   steigert   Stelle   stellt   stellung   stets   Steuerungsfokus   Stimmen   stimmter   Stopp   stren   strichelte   strikte   Studio   stützung   style   Subject   SubjectAbstrakte   Subjekt   Subjekte   Subjekten   Subjekts   symbolisiert   system   systematisch   Tabelle   täglich   tails   tainer   Taste   tätig   tationen   Teams   Technik   Technologie   Teil   Teile   Terminologie   tern   terns   ters   Test   testen   Teufel   Text   TextBox   TextBox1   TextBox1_KeyUp   THEN   theo   theoretisch   theoretische   theoretischen   Theorie   these   thode   Thomas   Thread   Threading   ticast   TickCount   ticObserver   tierung   tierungsmodell   tigt   tion   ToInt32   tools4vb   Tortendiagramme   ToString   Track   TrackBar   TrackBar1   TrackBar1_ValueChanged   Trans   Transparenz   treffenden   Trennung   triert   trierung   Tritt   trotzdem   true   tung   Typen   typischerweise   typsicheres   über   überall   Übergabe   überge   übergeben   übergibt   überla   übermitteln   übernehmen   übernimmt   überschaubarer   überschreiben   Übersicht   übersichtlich   übersichtliche   übersteigt   überwachende   übrigens   UhrSeite   umgekehrt   umsetzen   Umsetzung   umständlich   unbeachtet   unbegrenzte   unendlich   ungemein   Unklarheiten   UnregisterOb   UnregisterObserver   Unregistration   unter   unterer   untermauern   Unterschie   Unterschied   Unterschiede   unterschiedlichen   unterstreicht   unterstützt   unterstützung   Until   Update   UpdateDisplay   UpdateMaxDisplay   UpdateMaximum   ursprüng   User   Value   ValueChanged   Variationen   verändert   Verantwortung   verbes   verbessert   verblüffende   verdeutlicht   Verfügung   Vergleich   verhindert   Verknüpfung   Verlag   verlagert   verlangt   verlinkte   vermindert   vers   verschiedene   verschiedenen   verschiedener   verschiedensten   Version   Version1   Versionen   verstanden   Verstärkungsfaktor   verstehen   vertauschen   vertauscht   vertikale   vertikalen   verwenden   Verwendung   Verzögerungszeit   viel   viele   vielen   vielleicht   Vielzahl   vier   vierte   virchivwww   Visual   vollen   völlig   Vollkommenheit   vollständig   vollständigen   voneinan   voneinander   Voraussetzungen   Vorgänger   Vorgängerversion   Vorgängerversionen   vorgegeben   vorliegenden   vorprogrammiert   Vorteil   Vorteile   Vorzug   Vorzüge   vorzuziehen   waage   Während   Walter   wäre   waspassiert   weder   Wege   weil   weiligen   weise   weit   weite   weitem   weiter   weitere   weiteren   weiterer   weiteres   weitgehend   welche   welcher   welches   wendung   wenig   Wenn   werde   werden   Wert   wertung   Wesley   wichtig   wichtigste   wieder   Wiedergabe   wiegen   will   willkürlich   WINDOWS   wird   wissermaßen   wobei   wohl   Wollen   worden   work   Wort   Wunsch   wurde   würde   wurden   wurfsmusters   ymax   Zahl   Zahlen   Zahlengenera   Zahlengenerator   Zahlengenerators   zahlenmäßige   zahlreiche   zeichnen   zeichnet   zeigen   zeigt   Zeile   Zeit   zeit1   zeitbeobachtung   Zeitver   Zeitverlauf   zentrale   zenvariablen   zept   zerschnittstelle   zeugen   zeugten   ziehungsweise   Zielsetzung   ziemlich   zieren   Ziffernanzeige   zige   ziges   zirkulären   zogene   Zufalls   Zufallszahl   Zufallszahlen   Zufallszahlengenerator   Zufriedenheit   zugedachte   zugte   zulässiger   zunächst   zurück   zurühren   zusammen   zusammenarbeiten   Zusammenhänge   Zusammenstellung   Zusammenwirken   Zusätzlich   Zustands   Zustandsänderung   Zustandsänderungen   Zustandsvaria   Zustandsvariable   Zustandsvariablebeziehungsweise   Zustandsvariablen   Zwang   Zweck   Zwecks   zwei   zweite   zweiten   zwischen

Login
Sie sind nicht eingeloggt.

Login & Registrierung
Abo bestellen





Anzeige





Newsletter
Tragen Sie Ihre E-Mailadresse für den kostenlosen Newsletter von dotnetpro ein.


Umfrage
Wie zufrieden sind Sie mit Ihrem Gehalt?




Ergebnis anzeigen