Sofdwaredesign: Iderador
homeSoftwaredesign Sofdwaredesign: Iderador Prof. Dr. Uwe Schmidt FH Wedel

Iderador

weiter

weiter

Iderador

Klassifizierung
objekdbasierds Verhaldensmuschdr
weiter
Zwegg
sequenziellr Zugriff auf d Kombonende ois zsammengesedzde Objekds, ohne d innerr Schdrukdur vom Objekds offenzulege
weiter
Alias
Cursor
weiter
Modivazion
in Condainer-Klasse alle Elemende verarbeiden
Schleif übr alle Elemende von a Condainers
Schleif immr gleich, also als Schablonenmethode in oir gmoisame Oberklasse für alle Condainr imblemendiere
nur d Aufzählung allr Elemende in jedr Realisierung nei
weiter
Beischbiel
weiter
Anwendbarkeid
Zugriff auf d Elemende von a Condainers
(allgemoi: von a zsammengesedzde Objekds)
ohne d Schdrukdur vom Condainers offe z lege
geschachdelde Iderazion übr den gleile Condainr
oiheidliche Schniddschdelle zum Aufzähle vo Objekde
ineffiziend, wenn des zsammengesedzde Objekd rekursiv definierd isch, und oi Baumschdrukdur besidzd
effiziender: Kombosidum nedd mid Ideradore verarbeide, sonderet midInderbredierer und Besucher
für unerfahrene SW-Endwigglr oifachr als Inderbredierer und Besucher
weiter
Schdrukdur
Schdrukdurdiagramm
weiter
Teilnehmer
  Condainer
abschdrakde Klasse für alle Condainr
  Enumerazion
abschdrakde Klasse für d Aufzählung, d Iderador-Schniddschdelle
  Condainer1
oi konkrede Imblemendierung von a Condainers
imblemendierd Iderador-Erzeigungsfunkzion(e)
  Enumerazion1
die z dem Condainr gehörig Ideradorklasse
weiter
Konsequenzen
viele Condainer-Oberazione könne allgemoi für alle Condainr gmoisam formulierd werde
in abschdrakde Klasse Schablonenmethoden übr Iderador-Objekde
die erzeigende Funkzione für d Aufzählunge sind dr oizig variable Teil in den Schablonenmethode
für d Ideradore werde zsädzliche Objekde benödigd
Effizienz, gell?
mid foreach-Roudine manchmol elegandr und effiziender
koi zsädzlile Objekde für den Iderador-Zuschdand
dr Zuschdand im Iderador-Objekd isch nedd immr oifach z verwalden
Beischbiel: binärr Baum
dr gsamde Pfad vom momendane Knode zur Wurzl zurügg muss im Iderador verwalded werde.
 
Beischbil aus Algorithme und Dadenschdrukduren:
Iderador für Mabs imblemendierd als binäre Suchbäume ab Zeile 670
Vorsichd: koi Änderung vom Condainers während dr Iderazion
weiter
merke
Effizienz-Fragen im Vergleich zur Schdradegie.
weiter
Imblemendierung
die Ideradore lese nur im Condainr
deshalb mehrere Ideradore auf oim Condainr möglich
in dr Lideradur: schdabile Ideradoren
Ideradore, d au no "richdig" arbeide, wenn dr Condainr während dr Iderazion veränderd wird
besser: nedd verwende und nedd imblemendiere
Schniddschdelle für d Ideradore underschiedlich breid
oi bis fünf Funkzionen
Java: oi saumaessich oifache Schniddschdelle
weiter
Beischbiele
Java Beischbiel für oin filderde Iderador imblemendierd mid Dekorierer-Muschdr
weiter
Bekannde Verwendungen
JDK1.1 joova.udil.Enumerazion Klasse
weiter
verwandde Muschder
sind für rekursive Dadenschdrukdure bessr eigned als Ideradoren
im Endwurfsmuschder-Buch: Einschädzung falsch
weiter
foreach-Roudine mid Kommandos als Paramedr sind effiziendr
weiter

Ledzde Änderung: 03.01.2017
© Prof. Dr. Uwe Schmidd
Prof. Dr. Uwe Schmidt FH Wedel