Thread dateien löschen (25 answers)
Opened by DerVersuch at 2010-01-14 22:01

pq
 2010-01-15 12:53
#130562 #130562
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
Guest anon
sollte doch der Schluss naheliegen, dass mittels direkter Zuweisung der komplette Verzicht auf $1 kein Risiko birgt‽

erstens geht das nicht immer (wenn man mit mehreren matches pro iteration über m/.../g iterieren will) und manchmal will man auch abhängig von den einzelnen matches nur bestimmte weitere.

Quote
Wenn einem defensive Programmierung am Herzen liegt, fällt die Entscheidung zwischen den Möglichkeiten nicht schwer.

nö, mir fällt sie auch nicht schwer. ich mach sie von der situation abhängig =)

Quote
Die Gültigkeitsabfrage (gerne unterschlagen,

nur dass du gerade in dem beispiel aus dem thread nix gewinnst.
vgl.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if ($filename =~ m/(...)/) {
    $filename = $1;
    # weiter
}
else {
    die ...;
}

# vs.

my ($untainted) = $filename =~ m/(...)/;
if ($untainted) {
    # weiter
}
else {
    die ...;
}

d.h. die if-abfrage braucht man in diesem beispiel weiterhin, von daher sehe ich in diesem argument jetzt keinen vorteil. (es gibt andere fälle, wo das der fall sein mag).

Quote
Immer, wenn ein Pythonista so ein $1 liest, lacht er innerlich,

wann programmierer anderer sprachen über mich lachen, ist mir herzlich egal, ehrlich gesagt =)
mag sein, dass die captures in perl von der verwendung nicht immer doll sind, aber daraus ziehe ich nicht den schluss, die digit-variablen komplett zu vermeiden (wie gesagt kann man es auch nicht immer).

Quote
Als Anhänger von Perl sollte man moderne Praktiken propagieren

mach ich eigentlich oft, ich hab ja auch Perl Best Practices gelesen und mir meinen teil daraus gezogen. trotzdem gibt es unterschiede, was als modern betrachtet wird und was nicht. ich persönlich sehe noch genug fälle, bei denen ich die variablen benutzen möchte.
wenn du das für unmodern hältst, müssen wir so verbleiben, da es letztendlich auf geschmackssache hinausläuft =)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread dateien löschen