_roro: Programmierstil

Beitrag lesen

Moin,

bisher baue ich immer Kontrollstrukturen auf, um Parameter zu handlen. Bei vielen möglichen Parametern wird diese Kontrollstruktur recht lang und unübersichtlich.

Eine andere Möglichkeit geht so, dass ich eingangs einen hash mit Referenzen auf Funktionen schreibe, was dann die Kontrollstruktur vereinfacht. Weiterer Vorteil: Ich habe alle erlaubten Parameter sofort im Blick.

Nachteil: Es führt dazu, das Funktionen in Funktionen aufgerufen werden, das ist auch nicht gerade schön.

Was gibt es noch für Möglichkeiten?

z.B.
#!/usr/bin/perl
###########################################################################
my %args = (
 'update' => &update,
 'insert' => &insert,
);
##########################################################################
use strict;

if(exists $args{$ARGV[0]}){
 $args{$ARGV[0]}();
}
else{
 print "unbekannter Parameter\n";
}

exit;
###########################################################################
sub update{
 # andere Funktionen aufrufen
 print "update $ARGV[1]\n";
 # andere Funktionen aufrufen
 return;
}
###########################################################################
sub insert{
 # andere Funktionen aufrufen
 print "insert $ARGV[1]\n";
 # andere Funktionen aufrufen
 return;
}