Seite 1 von 1

Global Variablen

Verfasst: Samstag 29. Juli 2017, 17:04
von computatrum physicus
Warum sagen so viele Leute ,dass man Globale Var. vermeiden solle?

Re: Global Variablen

Verfasst: Samstag 29. Juli 2017, 17:14
von BlackJack
Weil es wahr ist. Physiker sind aber ausgenommen, die können eh nicht programmieren. *wegduck*

Re: Global Variablen

Verfasst: Samstag 29. Juli 2017, 18:37
von noisefloor
Hallo,

weil globalen Variablen es extrem schwierig machen, den Zustand eines Programms nachzuvollziehen. Unter Python ist es so, dass wenn du `global` im Quelltext siehst, zu 99,9% davon ausgehen kann, dass das ganz unsauber programmiert ist.

Gruß, noisefloor

Re: Global Variablen

Verfasst: Montag 31. Juli 2017, 14:32
von /me
computatrum physicus hat geschrieben:Warum sagen so viele Leute ,dass man Globale Var. vermeiden solle?
Stell die Frage mal andersherum: Welche Vorteile hast du durch die Verwendung von globalen Variablen?

Und denk bitte bei der Antwort daran, dass du einzelne Funktionen vielleicht auch mal in anderer Reihenfolge oder einem anderen Kontext aufrufen möchtest als du dir das zuerst gedacht hast.

Re: Global Variablen

Verfasst: Dienstag 1. August 2017, 09:03
von BlackJack
Globale Variablen machen den Code schwerer verständlich weil man nicht mehr Funktionen einzeln betrachten kann sondern immer schauen muss welche Funktionen noch und in welcher Reihenfolge die globale Variable(n) benutzen oder verändern. Man koppelt damit Funktionen auf eine intransparente Art und Weise.

Funktionen kann man deshalb auch schlecht isoliert testen, weil man immer auch Zustand ausserhalb der Funktion berücksichtigen muss.

Das macht die Fehlersuche unnötig schwerer.

Durch die Abhängigkeit zu globalen Variablen kann man Funktionen auch nicht so einfach in ein anderes Modul verschieben oder wiederverwenden.

Funkionen die globale Variablen verwenden, kann man nicht sicher nebenläufig verwenden.