Thread AnrufeAnalyse/Statistiken (13 answers)
Opened by J0ke at 2017-03-14 12:49

Raubtier
 2017-03-15 07:49
#186239 #186239
User since
2012-05-04
1039 articles
BenutzerIn

user image
Moin,

ich habe noch stilistische Anmerkungen:

- du solltest deinen Code einrücken, also den Teil jeweils von { bis }.
- benutze lexikalische Dateihandles. Also die Dinger mit $ davor. Ansonsten hast du unnötig globale Dateihandles. Also statt
Quote
Code (perl): (dl )
1
2
3
4
open (NUMMERN, '<', "StudioNummern.txt") or die $!;
my @snr=<NUMMERN>;
chomp @snr;
close (NUMMERN);

besser:
Code (perl): (dl )
1
2
3
4
open(my $fhNummern, '<', "StudioNummern.txt") or die $!;
my @snr=<$fhNummern>;
chomp @snr;
close ($fhNummern);


Das close kann man sich sparen, wenn das lexikalische Dateihandle innerhalb eines Blocks geöffnet wurde (Datei geht bei } automatisch zu). Daher findet man gerne "do" bei sowas (nur um den Block zu haben):
Code (perl): (dl )
1
2
3
4
5
my @snr = do {
    open(my $fh, '<', "StudioNummern.txt") or die $!;
    <$fh>
};
chomp @snr;


Das geht noch kürzer (ohne Lesbarkeit zu verlieren), wenn man ein Modul nutzt:
Code (perl): (dl )
1
2
use File::Slurp;
chomp(my @snr = read_file("StudioNummern.txt"));


Anmerkung gilt auch für STUD und TXT!

View full thread AnrufeAnalyse/Statistiken