Thread Best Practice? Modulvariablen mit oder ohne Modulpräfix (26 answers)
Opened by GwenDragon at 2024-07-05 14:48

GwenDragon
 2024-07-05 14:48
#196547 #196547
User since
2005-01-17
14783 Artikel
Admin1
[Homepage]
user image
Einfach aus Interesse, wie handhabt ihr das. Namen der Modulvariablen.

Schriebt ihr das so:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
package Test;

use vars qw( $DEBUG $option %hash );

$Test::DEBUG = 0;

%Test::hash = (a => "Ah", );

print $Test::DEBUG;

1;


oder so

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
package Test;

use vars qw( $DEBUG $option %hash );

$DEBUG = 0;

%hash = (a => "Ah", );

print  $DEBUG;

1;


oder
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
package Test;

our $DEBUG = 0;

our %hash = (a => "Ah", );

print $DEBUG;

1;

VORSICHT vor our. Scope! Das kann WTFAuarrrrr! machen. ;-)

oder noch Schlimmer:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
package Test;

$DEBUG = 0;

%hash = (a => "Ah", );

print $DEBUG;

1;


Ersteres macht mehr Schreibarbeit, zeigt aber später bei mehr Code, dass das eine Modulvariable ist.

Dieser ominöse Perl-Programmierer TimTowdy macht halt über Jahre was er will.




Ich schreibe lieber wie im ersten Beispiel.

Wie seht ihr das?

PS: Mir ist das Buch Perl Best Practices bekannt, hab’ ich im Regal und auch früher mal gelesen.
Last edited: 2024-07-05 15:32:32 +0200 (CEST)

View full thread Best Practice? Modulvariablen mit oder ohne Modulpräfix