Thread Innerhalb Hash Def auf Keys zugreifen (42 answers)
Opened by bianca at 2013-09-08 06:08

bianca
 2013-09-09 16:56
#170042 #170042
User since
2009-09-13
7016 Artikel
BenutzerIn

user image
2013-09-09T11:04:30 payx
mir scheint das immer noch zu komplex (und irgendwie fehleranfällig) gelöst zu sein.

Was siehst du fehleranfällig an?

2013-09-09T11:04:30 payx
Was die Script-Pflege betrifft, ist doch mein zweiter Ansatz von oben nicht aufwendiger als dieser?

Doch, deine Ansätze bedingen immer eine Änderung an beiden Stellen.
Meiner nicht. Ich kann entweder ein Formularformat ergänzen ODER eine Feldvariable ergänzen ODER beides.
Egal was ich bei deinem Vorschlag mache, ich muss immer die Formate UND Variablen anfassen.

2013-09-09T11:04:30 payx
und die Verknüpfung zwischen beiden muss in der Art eines Mappings gepflegt werden.

Nein, wofür?

2013-09-09T11:04:30 payx
Dabei ist es technisch gesehen egal, ob ich den Formaten eine Liste mit Variablen (mein erster Ansatz) oder den Variablen eine Liste mit Formaten (mein zweiter Ansatz) beifüge.

Nein. Ich brauche ja nur von den Variablen ausgehend deren "Aussage" für welche Formate sie zur Verfügung stehen.
Die Formate hingegen iterieren immer über alle Variablen und klappern diese ab.

2013-09-09T11:04:30 payx
    [*]Das eigene [c]code[/c]-Element bei den Formaten scheint mir überflüssig zu sein.

    Nur im stark vereinfachten Beispiel.
    Im echten Script macht der Code aufwendige Tänze durch die Daten, um die Feldinhalte zusammen zu kratzen und auszuliefern.

    2013-09-09T11:04:30 payx
    [*]Die beiden [c]print[/c]-Befehle aus [c]$test{formate}->{code}[/c] und unten der [c]foreach[/c]-Schleife werden hier irgendwie verschachtelt (wundert mich fast, dass das funktioniert): Das aus der [c]foreach[/c]-Schleife unten kannst Du einfach weglassen: [c]$ref->{code}($ref->{ident});[/c] statt [c]print $ref->{code}($ref->{ident})."\n";[/c]. (Notfalls nochmals [c]print "\n";[/c] am Ende.)[*]Auch die Verschachtelung der beiden [c]foreach[/c]-Schleifen kommt mir unnötig kompliziert vor.[/list]

    Alles nur im vereinfachten Beispiel.

    2013-09-09T11:04:30 payx
    Zumindest für die hier erkennbare Aufgabenstellung scheint mir mein Ansatz, ehrlich gesagt, viel besser (weil viel einfacher) strukturiert zu sein.

    Wie gesagt. Es geht nicht um dieses Beispiel.
    Danke für dein Mitdenken.
    Aber meinen Lösung mit der Übergabe von ident ist optimal geeignet und der Code ist super einfach zu pflegen.
    10 print "Hallo"
    20 goto 10

    View full thread Innerhalb Hash Def auf Keys zugreifen