Hi!
Ich gebe zu, mit wirklichen Argumenten habe ich auch gespart. Dann werde ich mir nun auch die Zeit nehmen, das nachzuholen.
Danke. Damit kann ich doch wenigstens was anfangen.
Ich finde den Artikel inhaltlich gut, [...] Er ist aber formal sehr unpraezise, so dass ich glaube, dass Anfaenger, die kein Grundverstaendnis fuer die Problematik mitbringen, bei der Lektuere des Artikels grosse Schwierigkeiten haben werden, dieses Verstaendnis zu erlangen. Nicht zuletzt schreibe ich das im Hinblick auf diesen Thread, indem ein Anfaenger zwar die formale Funktionsweise verschiedener Escape-Funktionen kannte, aber keinerlei Verstaendnis fuer ihren Einsatzzweck hatte.
Es wird immer jemanden geben, der auch bei der besten Formulierung Verständnisprobleme hat. Besonders, wenn derjenige sich auf etwas eingeschossen hat und schwer von seinem Standpunkt wegzubringen ist beziehungsweise von seinem Denkfehler zu überzeugen ist.
Bleibt die Frage: "Was ist ein Kontext?" Und diese Frage beantwortet der Artikel *nicht*.
[...]
[...]
Als Idee habe ich, die Kontexte nicht nur im Fließtext nochmal einer genauen Begutachtung zu unterziehen sondern sie in den Beispielen auch mit dem (dezenten) Einsatz von (Hintergrund-)Farbe (inklusive Legende) zu verdeutlichen.
Mitunter braucht man auch zeitlichen Abstand, um sein eigenes Geschriebsel kritisch betrachten zu können.
Um den String jedoch beispielsweise in einem SQL-basierenden Datenbanksystem abzulegen, muss er in ein SQL-Statement eingebettet werden [...]
Nein, das ist *falsch*! Um den String in einem SQL-basierenden Datenbanksystem abzulegen, muss ein (ggf.) *anderer* String, naemlich sein SQL-Literal, in ein SQL-Statement eingebettet werden. Warum Du Dich hartnaeckig weigerst, von Literalen zu sprechen, kann ich nicht nachvollziehen, denn darin steckt des Pudels ganzer Kern.
Soweit ich mich erinnere, wurde der Begriff Literal jetzt zum ersten Mal und von dir thematisiert. Aus der bisherigen Nichtverwendung eine noch dazu hartnäckige Weigerung herauszulesen, finde ich schon etwas gewagt. Ob die Verwendung des Begriffs "Literal" zum Verständnis beiträgt, werde ich betrachten. Man kann aber auch durch Übergenauigkeit mehr verwirren als aufklären. Der erwähnte Satz sollte erst einmal zeigen, dass der Transport des Wertes wieder in einem anderen Kontext erfolgt, und dass dabei ebenfalls die bekannte Mischung aus Code und Daten zu berücksichtigen ist. Erst jetzt käme das Literal (die Darstellung des Wertes in SQL-gerechter Notation) zum Einsatz, als eine Lösung des Problems. Der nachfolgende Satz sollte beschreiben, was dabei zu beachten ist - allerdings ohne dass er das "Literal" zu verwendet hat. Generell werde ich nochmal prüfen, inwieweit ich es noch verständlicher und betonender einarbeiten kann, wie Werte unbeschadet eine Einbettung / einen Kontextwechsel überstehen.
Das Problem "ich habe einen Wert und will den eigentlich nur transportieren" als das was man eigentlich will, und dass der Kontextwechsel "nur" eine in Abhängigkeit dazu zu beachtenden Notwendigkeit ist, hatte ich in meiner ersten Version so nicht berücksichtigt. Darauf hatte mich Sven Rautenberg aufmerksam gemacht, aber sich dann leider nicht mehr an der weiteren Diskussion beteiligt.
Die Idee mit dem Literal hat was. Die Problematik lässt sich damit zusammenfassen: "Ich haben einen Wert. Den muss ich zum Zwecke des Transports in einen anderen Kontext einbauen. Dazu darf nicht der Wert selbst eingefügt werden sondern sein Literal. Neues Problem: Wie bilde ich das Literal des Wertes?" - Hmm, das sieht nach einem generellen Umformulieren aus ... Ich denke darüber nach.
[einige Beispiele]
Werde ich mir genauer anschauen, auch wenn ich jetzt hier nicht im einzelnen darauf eingehe.
Mein Fazit: Ich weiss nicht, was ein Kontext ist. Aus all diesem ein Grundverstaendnis fuer das Thema zu erlangen, wuerde mir ausgesprochen schwer fallen.
Das Problem ist, du weißt es bereits und stellst dich vielleicht grad etwas bockig, um deinen Standpunkt zu verteidigen. :-) Die meisten, die es nicht wissen oder verstehen, geben kein Feedback oder können keine zielgerichtete Kritik formulieren.
Ich meine das uebrigens ernst - ich *weiss nicht*, was "Kontext" (in diesem Kontext ;-)) bedeutet. Und ich weiss auch nicht, warum dieser Begriff so eine zentrale Rolle spielt. Wenn man in den jeweils angesprochenen Beispielen mal hinschreiben wuerde, was wirklich passiert, d.h. die Begriffe Maskierung und Literal exzessiv und *praezise* benutzte, dann braeuchte man den Begriff Kontext wahrscheinlich ueberhaupt nicht.
Es ist immer schon, wenn es einen Begriff für etwas gibt oder man einen dafür findet. Das erleichtert das Beschreiben und auch das Verständnis, wenn man nicht immer darum herum formulieren muss. Natürlich muss zum einen die Definition klar sein und zum anderen die Verwendung dann auch richtig sein, damit es nicht zu Missverständnissen kommt.
Eine Verdeutlichungsidee habe ich ja oben schon genannt.
So, jetzt hab ich ganz schoen ausgeholt
Gib's mir! :-) Aber im Ernst: Danke für die Kritik. Wenn dir oder jemand anderem noch etwas einfällt, immer her damit. Sicher werde ich nicht alles berücksichtigen können, aber als Anregung werde ich es aufnehmen.
Lo!