Thread Schnittstellen, und globale Variablen (7 answers)
Opened by pktm at 2008-01-17 00:23

Strat
 2008-01-18 13:42
#104887 #104887
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Gerade bei prozeduraler Programmierung kann man globale Variablen meist sehr einfach vermeiden, indem man sie einfach uebergibt. Fuer Konfigurationen bietet sich haeufig eine Hashreferenz (oder sogar Objekt?) an, das überall als erster Parameter reingegeben wird.

Der grosse Vorteil, keine globalen Variablen zu verwenden ist, dass die Subroutine nur ueber klare Schnittstellen (naemlich Parameter) mit dem Aufrufer kommuniziert. Man braucht sich um ausserhalb existierende Variablennamen nicht kuemmern, sondern hat eine Art Black Box, in der man schalten und walten kann, wie es einem beliebt, ohne die Angst, anderen Funktionen irgendwas wegzuschiessen. Besonders beim Debuggen spart sowas enorm viel Zeit.

Nebenbei wird es dadurch auch meist einfacher, eine Funktion in einer anderen Applikation 1:1 zu verwenden.
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread Schnittstellen, und globale Variablen