Thread our & Perl 5.005 (30 answers)
Opened by BrownWolf at 2004-01-03 02:48

Crian
 2004-01-08 17:00
#77919 #77919
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
Globale Variablen sind eigentlich deswegen von Übel, weil sie den Informationsfluss verschleiern.

Wenn man normaleerweise eine Funktion hat, die drei Parameter bekommt und zwei erzeugt, dann weiß man normalerweise, was reingeht und was raus.

Werden aber plötzlich globale Variablen benutzt, die Parameter oder Rückgabewerte ganz oder teilweise ersetzen, kann man die Funktionsweise der Funktion weniger leicht verstehen und man kann den Code auch schlechter wiederverwenden.

Ich bin ein Freund von klaren Schnittstellen, deshalb vermeide ich globale Variablen weitestgehend.
Ich verwende sie meistens eher als Konstantenersatz o.ä.

Zum Einwurf es gäbe keine Modul-globalen Variablen: Wenn jemand den Qualifier davor schreibt, kommt er natürlich an den Inhalt ran, aber damit ist dann auch schon dokumentiert, woher die Variable stammt. Das macht sie nicht viel besser, aber etwas.

Ich bin da vielleicht etwas von C / C++ verwöhnt, wo man mit Namensräumen und Dateien die Gültigkeit von Variablen stark beeinflussen kann.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite

View full thread our & Perl 5.005