<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>Visitor by </title>
      <link>https://padlet.com/46h57fwpmx/gxr12n164e8l</link>
      <description></description>
      <language>en-us</language>
      <pubDate>2019-11-30 09:11:49 UTC</pubDate>
      <lastBuildDate>2025-04-20 17:20:47 UTC</lastBuildDate>
      <webMaster>hello@padlet.com</webMaster>
      <image>
         <url></url>
      </image>
      <item>
         <title>übliche Synonyme</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417918323</link>
         <description><![CDATA[<ul><li>Besuchermuster</li></ul>]]></description>
         <enclosure url="" />
         <pubDate>2019-11-30 09:11:58 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417918323</guid>
      </item>
      <item>
         <title>Verwendung</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417918774</link>
         <description><![CDATA[<ul><li>ist ebenfalls ein Verhaltensmuster und soll dazu dienen, Struktur und Funktion (oder auch: Daten und Operationen) zu trennen</li></ul><div><br></div><ul><li>Es hilft dadurch, das open/closed-Prinzip (offen für Erweiterungen, geschlossen für Änderungen) zu realisieren</li></ul><div><br></div><ul><li>Erleichterung der Code-Wartbarkeit</li></ul>]]></description>
         <enclosure url="" />
         <pubDate>2019-11-30 09:15:47 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417918774</guid>
      </item>
      <item>
         <title>Struktur und Dynamik</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417918808</link>
         <description><![CDATA[<ul><li>UML Diagramm</li></ul>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/436814843/37eb257a83f01b6a374cb0b75047e683/VisitorPatternUML.png" />
         <pubDate>2019-11-30 09:16:03 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417918808</guid>
      </item>
      <item>
         <title>Allgemein</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417919365</link>
         <description><![CDATA[<ul><li>gehört zu den Verhaltensmustern</li></ul><div><br></div><ul><li>befasst sich mit Algorithmen und Zuweisung von Zuständigkeiten zu Objekten</li></ul><div><br></div><ul><li>beschreibt Muster von Objekten und Klassen und Muster der Interaktionen zwischen Ihnen</li></ul><div><br></div><ul><li>beschreibt komplexe Kontrollflüsse</li></ul><div><br></div><ul><li>verwandte Vorgänge auf eine Gruppe von Klassen auszuführen und diese Operationen in einer einzigen Klasse zu plazieren</li></ul>]]></description>
         <enclosure url="" />
         <pubDate>2019-11-30 09:20:36 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417919365</guid>
      </item>
      <item>
         <title>Beispiel Anwendungen in der Praxis</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417920359</link>
         <description><![CDATA[<ul><li>Wenn eine Objektstruktur viele Klassen von Objekten mit unterschiedlichen Schnittstellen enthält und Operationen auf diesen Objekten ausgeführt werden sollen, die von ihren konkreten Klassen abhängen</li><li>Wenn viele unterschiedliche und nicht miteinander verwandte Operationen auf den Objekten einer Objektstruktur ausgeführt werden müssen und diese Klassen nicht mit diesen Operation „verschmutzt” werden sollen. </li><li>Wenn sich die Klassen, die eine Objektstruktur definieren, praktisch nie ändern, aber häufig neue Operationen für die Struktur definiert werden. </li></ul><div><br></div>]]></description>
         <enclosure url="" />
         <pubDate>2019-11-30 09:28:39 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417920359</guid>
      </item>
      <item>
         <title>Codebeispiel</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417920785</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/436814843/76c1097ddb61949eb985c41e7c70fe35/Bildschirmfoto_2019_11_30_um_10_34_12.png" />
         <pubDate>2019-11-30 09:32:05 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417920785</guid>
      </item>
      <item>
         <title>UML Diagramm</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417921711</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/436814843/d44f814c6393bd5021cc8676994fb0f5/Bildschirmfoto_2019_11_30_um_10_37_55.png" />
         <pubDate>2019-11-30 09:38:12 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417921711</guid>
      </item>
      <item>
         <title>Vorteile</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417921948</link>
         <description><![CDATA[<ul><li>sehr einfach erweiterbar (mit neuem Verhalten)</li><li> ein bestehendes System kann an zukünftige Anforderungen leicht angepasst werden</li><li>Zentralisierung von funktionellem Code</li><li>Visitor Objekt wird verwendet um die Elemente zu strukturieren, dadurch lassen sich Daten oder auch Zwischenergebnisse von Operationen zentral sammeln, speichern und weiterverarbeiten</li></ul><div><br></div>]]></description>
         <enclosure url="" />
         <pubDate>2019-11-30 09:40:05 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417921948</guid>
      </item>
      <item>
         <title>Nachteile</title>
         <author>46h57fwpmx</author>
         <link>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417922024</link>
         <description><![CDATA[<ul><li>eventuelle Überarbeitung der Visitor-Klasse </li><li>Bei jeder nachträglichen Einführung eines neuen Elementes muss das Visitor-Interface mit der entsprechenden visit-Methode für das neue Element erweitern werden. Bereits bestehende Konkrete Visitor, welches das Visitor-Interface implementieren, müssen mit der visit-Methode für das neue Element nachträglich erweitert werden.</li><li>Das Visitor-Muster verletzt das Prinzip der Codekapselung. Es beinhaltet Code welcher auf eine Reihe unterschiedlicher Objekte angewendet wird und nicht in der eigenen Klasse enthalten sind. Ein Element der Struktur muss den konkreten Visitor nicht kennen. Der Visitor muss jedoch die Elemente kennen, da er mit den Methoden der Elementklasse interagiert.</li></ul>]]></description>
         <enclosure url="" />
         <pubDate>2019-11-30 09:40:23 UTC</pubDate>
         <guid>https://padlet.com/46h57fwpmx/gxr12n164e8l/wish/417922024</guid>
      </item>
   </channel>
</rss>
