Einzelnen Beitrag anzeigen

new4toms
(Gast)

n/a Beiträge
 
#4

Re: Globale Variablen - warum in der DP so verpönt?

  Alt 8. Mai 2005, 04:22
Zitat von Hansa:
Zitat von new4toms:
...Bislang hatte ich noch nie Probleme, meinen eigenen Sourcecode wiederzuerkennen.

Womit haben denn die "Globalen-Variablen-Feinde" Probleme?
Da du ja angeblich bereits alles darüber gelesen hast, müßte dir einiges klar sein, warum das keiner machen sollte. Einzeln zähle ich das deshalb jetzt nicht neu auf. Mehrere Gegenfragen : womit hast denn du Probleme, wenn du glaubst sie benutzen zu müssen ? Wie groß ist denn dein Programm überhaupt ? Meinst du, nur aus Spaß wäre private, public usw. eingeführt worden ?

Globale Variablen kommen aus den 50er Jahren des letzten Jahrhunderts (Basic & Co). Da ging es wohl nicht anders. Dann kamen Unterprogramme mit eigenen Variablen. Dann noch das Unit Konzept mit diesen beiden Sorten an Variablen und zusätzlich noch Implementation/Interface-Unterscheidung (auch schon 20 Jahre her). Und jetzt muß man sich sogar noch mit protected, published usw. rumplagen. Warum ist das so ? Weil es nicht anders geht. Alternative wären unüberschaubare, fehlerträchtige Programme. Deshalb die Frage nach deiner Programmgröße. Wenn ich an 1000 Stellen im Programm immer dasselbe var i : integer; benutze und verändere, dann sage mir mal an welcher dieser 1000 Stellen das i irrtümlich falsch besetzt wird. Du wirst ewig brauchen, das zu finden, falls dies überhaupt gelingt.

Guck dir mal in dem Zusammenhang noch GOTO an. Im Zusammenspiel mit globalen Variablen ist das dann echt nicht schlecht. 8)

EDIT : Der letzte Satz ist natürlich ein Witz. Verwende bloß kein GOTO. Und dizzys Beitrag paßt auch gut zum Thema. Schön zu sehen, was bei dabei rauskommt: man kann es nicht mal vernünftig erklären. Ich habe zwar den Sinn verstanden, aber nur weil ich sowieso gewußt habe was er meint. @dizzy: ich meine damit ein Beispiel zu konstruieren. Sogar ein Beispiel in diesem Zusammenhang ist irreführend, egal wie mans anpackt.
@Hansa: Das Projekt ist/sind ca. 200.000 Zeilen, die ich "verschärft" betreue. Ca. 15.000 Programmzeilen davon wurden von mir im Lauf der letzten sechs Jahre modifiziert (mit globalen Variablen und sogar GOTOs). Mit allen benutzten Komponenten sinds sogar über 1.4 MIO Zeilen, die ich für das Projekt (D5pro) betreue/überwache! Da ich dabei selbstverständlich ein Schweinegeld verdiene, darfst Du mal an dem Bentley lutschen, den ich Hartz IVer gerade poliere

Edit:
i: Integer (local);
gi: Integer (global_integer);
gi2: Integer (global_integer_#2);
b: Boolean (local);
gb: Boolean (global_boolean);
gb2: Boolean (global_boolean_#2);

Natürlich bin ich mir *absolut* sicher, daß man die obige Reihe keinesfalls fortsetzen kann, da sie keinerlei Systematik erkennen lässt!!!

Man sieht sich wieder bei HartzIV!?
  Mit Zitat antworten Zitat