[Allegro] "Best practice" (AW: Vb.257 Vorab: V34.0 kommt morgen)

Fischer, Thomas fischer at sub.uni-goettingen.de
Mo Feb 3 09:57:13 CET 2014


Hallo Herr Eversberg,

> > Was waere denn nun die "Best Practice" fuer Flex-Programmierer,
> > auch im Hinblick auf die Behandlung langer Dateinamen als
> > Vorgabe bzw. Ergebnis der Dateiauswahlbox "fnam":
> >
> "Best practice" ist für meine Begriffe ein möglichst streng
> defensives Verhalten: Keine Leer- oder Sonderzeichen in Dateinamen,
> also UNIX-kompatibel. Was nicht UNIX-kompatibel ist, kann schon deshalb
> nicht "best practice" genannt werden, andernfalls "second best
> practice for Windows". Eine practice, die gelegentlich das Anbringen von
> Anführungszeichen erfordert, aber nicht immer, ist keine beste Praxis.
> Wenn natürlich der FLEXer keine Macht über das Vergeben von Pfadnamen
> hat, dann weiß ich's aus dem Handgelenk auch nicht, wie er am besten
> verfahren sollte. Vorschläge bitte.

Mir ist nicht ganz klar, was Ihre Scheu vor Leerzeichen bedeutet.
Seit selbst die Windows-Befehlszeile damit problemlos umgehen kann, sehe ich keinen Grund, dafür besondere Maßnahmen vorzusehen. Beim Mac gab es von Anfang an (seit 1984) Leerzeichen, bei Unix (mit Anführungszeichen oder Kaschierung per "\ ") auch schon fast(?) ewig.
Hintergrund ist natürlich die alte und ziemlich unglückliche Festlegung, die Parameter eines Befehls im Terminal durch Leerzeichen voneinander zu trennen, aber das lässt sich wohl nicht mehr ändern; ähnliche Probleme gibt es ja auch bei der Trennung der Parameter einer Funktion durch Kommata, wenn man deutsche Dezimalzahlen verarbeitet, daraus resultieren dann diverse Excel Probleme...

Da mit der Einschließung in Anführungszeichen aber eine allgemein akzeptierte Lösung gefunden wurde, sollte dies auch umgesetzt werden.
Das heißt einerseits, dass alle Programme in der Lage sein sollten, einen in Anführungszeichen stehenden Namen korrekt auszuwerten, ob er nun Leerzeichen enthält oder nicht, da gab es im Allegro-Umfeld mal Probleme, meine ich mich zu erinnern. Dann ist ein Dateiname ohne Anführungszeichen halt nur eine abgekürzte Schreibweise, die bei einigen Namen erlaubt ist, bei anderen nicht.
Andererseits dürfen Dateinamen dann keine Anführungszeichen enthalten (wie unter Windows) oder diese müssten kaschiert werden können (wie bei Unix und Mac).

Ich sehe jedenfalls keinen Grund, irgendwelche über die Windows-Beschränkungen hinausgehenden Anforderungen an die Dateinamen als "Best Practice" zu formulieren, nur an die Programmieren muss halt die Forderung gestellt werden, dass entsprechende Namen korrekt verarbeitet werden.

Mit freundlichen Grüßen
Thomas Fischer






Mehr Informationen über die Mailingliste Allegro