Am 07.12.2017 um 20:48 schrieb OoOHWHOoO:
> 
> BEZUG 2:   Pitonyak hat dieses Verhalten als BUG (der 
> "IsMissing"-Anweisung) eingestuft und gemeldet.

Hint: Nur weil irgend jemand irgend etwas als Bug *bezeichnet*, bedeutet
das noch lange nicht, dass das ein Bug *ist*.

Es ist allerdings richtig dass die Dokumentationen bezüglich sowohl
OPTION als auch ISMISSING jeweils sehr mager ist, und die *genauen*
'Gebrauchsbedingungen' nicht ausreichend darstellen. /Ich/ stehe auf
Thomas' Seite, dass das Auslassen eines Parameters nie vorgesehen war,
und daher ein undokumentiertes Feature darstellt, das außerdem auch nur
mit dem Typen VARIANT sauber funktioniert.

> [3] Das Beispiel in der "LO BASIC-IDE Hilfe" zu "Optional" ist 
> fehlerfrei (BEZUG 4):
> 
> [4] Auf Grund des noch bestehenden BUGs (wenn denn Pitonyak mit seiner 
> Einschätzung richtig liegt) tendiere ich persönlich zu Thomas' Vorschlag 
> "sauberer Programmierung" (keinen optionalen Parameter zwischen zwei 
> Kommas weglassen), da man zu leicht vergessen könnte, dass eine (in 
> allen Nutzungs-Varianten) funktionierende "IsMissing"-Anweisung zwingend 
> von der Typ-Deklaration "Variant" abhängt für alle optionalen Parameter.

Meine Meinung aufgrund langjähriger Erfahrung ist, dass optionale
Parameter nur im alleräußersten Notfall verwendet werden sollten, und
zwar nicht wegen dem von dir angesprochenen Problem, sondern aus
wartungstechnischen Gründen. Wenn du in 3 Monaten oder 5 Jahren dein
Programm umschreiben musst, bist du dir selber dankbar, wenn du es von
vornherein so geschrieben hast, dass du *dann* auch schnell wieder
hinein findest. Und das ist bei einer klar vorgegebenen
Parameterstruktur deutlich einfacher als bei einer wirren, bei der man
z. B. erst mal lange überlegen muss, was denn nun ursprünglich erlaubt
gewesen sein soll und was nicht, usw.

Bei einigen wenigen Parametern würde ich lieber konstant einen
Defaultwert übergeben, und bei vielen Parametern macht es eh mehr Sinn,
zu einem Array u. ä. zu greifen.

Wolfgang
-- 
If I could, I would wish for ONE news INDEED being a fake, namely for
the news of this immature cockalorum in fact became President of the
United States.

-- 
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Antwort per Email an