Warum? Wer was anfasst, macht die UN raus, das dauert ja nicht lang.SaskuAc hat geschrieben:Ich finde die Einstellung gut!
Leider müssen wir die nächsten 10 Jahre die Ungarische Notation noch durchlassen
Unnötiger Aufwand, da "Keine Variablennamensregeln" eine Obermenge von HN ist.ralf.wenzel hat geschrieben:Warum? Wer was anfasst, macht die UN raus, das dauert ja nicht lang
Nicht schon wieder dieser Unsinn. Erstens gibt sehr wohl globale Variablen- und zwar bezogen auf den Program-Load. Zweitens gibt es a) so was wie Verschattungen oder viel schlimmer b) wenn man vergisst eine (lokale) Variable zu definieren und es die leider im globalen Kontext schon gibt kommt man in Teufels Küche. Und drittens verstehe ich einfach nicht, warum du so unflexibel bist, dass du es nicht schaffst über die ersten 2-3 Buchstaben einer HN hinwegzusehen um den Rest des Variablennamens zu interpretieren. Wenn es Kollegen von mir leichter fällt HN zu lesen schreibe ich HN ( die sollen das schließlich später warten ) - wenn sie besser nicht-HN lesen können schreibe ich halt so. Der Compiler/Interpreter weiß eh was du meinst - da geht es eher darum den anderen Kollegen die Arbeit so leicht wie möglich zu machenralf.wenzel hat geschrieben:Außerdem: Da es keine globalen Daten im SAP gibt, ist das l schon Quatsch.
Ist dir schon mal der Gedanke gekommen, dass es bei einem Programm implizit klar sein könnte ( weil es z.B. im Klassennamen steht ) ob es sich um Rahmenverträge, Bestellungen oder was auch immer handelt und dass man es nicht explizit angeben muss? Oder dass es evtl. wichtig sein könnte die Quelle der Daten anzugeben ( EKKO )? Nicht jeder denkt so wie du, Ralf - aber das heißt nicht, dass alle anderen Idioten sind, deren Ansätze schon mal per se nix taugen weil sie nicht von dir sind.ralf.wenzel hat geschrieben:EKKO-Zeilen können alles mögliche sein. Rahmenverträge, Bestellungen, etc. Nach irgendeinem Kriterium werden die ja wohl in die interne Tabelle geschrieben worden sein - und genau das gehört in den Namen. Dann weiß ich auch, was drin ist. Will ich das wissen, muss ich das ganze Programm nach der Befüllung der Tabelle absuchen, wenn es nicht im Namen steht. Aber klar, Hauptsache lt_ steht davor, drei Zeichen für eine Nicht-Information.
Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
Unit605
Langsam wird mir klar wo dein Problem liegt - du verwendest eine eigene Definition von "globale Variable" und nicht diejenige, die üblicherweise im Kontext von Programmiersprachen verwendet wird.ralf.wenzel hat geschrieben:Zum letzten Mal: "Global" ist ein absoluter Begriff. Eine globale Klasse (auch ein Datentypen) ist systemweit verfügbar. Dieses Kriterium erfüllt KEINE Variable, also gibt es keine globalen Variablen.
https://en.wikipedia.org/wiki/Global_variable hat geschrieben:In computer programming, a global variable is a variable with global scope, meaning that it is visible (hence accessible) throughout the program, unless shadowed.
https://de.wikipedia.org/wiki/Variable_(Programmierung)#Sichtbarkeitsbereich_von_Variablen_.28Scope.29 hat geschrieben:Ein wichtiges Konzept von Programmiersprachen ist das Unterprogramm, ob es nun Prozedur, Funktion, Methode oder noch anders heißt. Die allgemeinste Form dieses Konzepts ist der in der Programmiersprache ALGOL 60 erstmals eingeführte Block. Praktisch alle Programmiersprachen, die dieses Konzept in irgendeiner Form anbieten, erlauben es, dass Blöcke ihre eigenen Variablen besitzen, die sich von den Variablen anderer Blöcke eindeutig unterscheiden lassen. Solche Variablen heißen lokale Variablen. Eine Variable, die im ganzen Programm für alle Blöcke zur Verfügung steht, heißt globale Variable.
1.) Wenn ich den rot markiertem Teil anschaue frage ich mich, warum du dich wunderst wenn man dich darauf hinweist Rücksicht zu nehmen?ralf.wenzel hat geschrieben:Edit für alle die, die fünf Jahre nicht aufgepasst haben: Sog. "globale" Variablen sind OBSOLET, weil intransparent. Schon deshalb sollten sie in einer gescheiten Anwendung gar nicht vorkommen. Und WENN sie unvermeidbar sind, kann man sie so kapseln, dass man sie nicht direkt verwendet.
https://en.wikipedia.org/wiki/Global_variable#Use hat geschrieben:They [global variables] are usually considered bad practice precisely because of their non-locality: a global variable can potentially be modified from anywhere (unless they reside in protected memory or are otherwise rendered read-only), and any part of the program may depend on it. A global variable therefore has an unlimited potential for creating mutual dependencies, and adding mutual dependencies increases complexity. See action at a distance. Global variables also make it difficult to integrate modules because software written by others may use the same global names unless names are reserved by agreement, or by naming convention. However, in a few cases, global variables can be suitable for use. For example, they can be used to avoid having to pass frequently-used variables continuously throughout several functions. In practice, large programs may well require a large number of global variables because there are so many parameters that are shared between different functions, and care must be taken to make sure different functions share the global data without mishap.