Am 28.07.2018 um 00:41 schrieb Gerhard Weydt:
deine Beschreibung trifft auf die API-Dokumentation zu, denn die ist
offensichtlich für die Implementierung erstellt worden bzw. wird dafür
erweitert/angepasst. Da ist eine andere Sicht notwendig als für die
Anwendungsprogrammierung.
Im Prinzip nein: Eine Dokumentation sollte verständlich sein, und nicht
voraussetzen, dass man eh schon kennt, was man darin nach schlagen
möchte. Dann ist sie nämlich nutzlos.
Die hierarchische Gliederung der Objekte für
das Design einer Anwendung hat sich bewährt, objektorientierte
Modellierung hat sich durchgesetzt. Die Problematik, dass dann ein
Objekt Eigenschaften und Methoden von übergeordneten Objekten erbt, die
man nicht direkt bei dem Objekt findet, hat man immer bei solchen
Modellen, das ist keine spezielle Schwäche von UNO.
Richtig; aber alle mir sonst bekannten Dokumentationen von
objektorientierten Modellen kommen damit zu recht. /Darauf/ kannst du es
also nicht schieben.
Sie wird aber
offensichtlich aufgewogen bzw. übertroffen durch viele Vorteile, die
dieses Konstrukt bei der Implementierung und folglich auch der
Ausführung bietet. Die Arbeit mit einem solchen Modell dürfte unter
anderem wegen der Implementierung von LibreOffice in verschiedenen
Betriebssystemen notwendig sein.
Ich kritisiere nicht die objektorietierte Modellstruktur; mit
objektorientierter Programmierung mach ich seit den 90er Jahren rum. Ich
kritisiere die dazu nicht vorhandene *Dokumentation*.
Diese für eine Anwendungsentwicklung erst einmal vorhandene Lücke, die
du ja offensichtlich thematisierst, behebt aber schon UNO grundsätzlich,
wenn auch nicht besonders benutzerfreundlich (aber das ist auch nicht im
Aufgabenbereich von UNO, das die Kernfunktionalität bereitstellt) durch
die Bereitstellung der Funktionen dbg_properties, dbg_methods und
dbg_supportedInterfaces, die bei fast jedem Objekt zur Verfügung stehen
und eben diese Verstreuung über mehrere Hierarchieebenen auflösen, indem
sie alle verfügbaren Eigenschaften, Methoden und (weniger direkt
wichtig) Interfaces eines Objekts auflisten.
Ja, über die bin ich auch schon gestolpert. Aber diese Funktionen sind
mittelschwerer Schwachfug; sorry.
Um darüber an Informationen zu gelangen, müsste man erst ein Programm
oder Makro o. ä. schreiben. Und dann müsste man vorher schon wissen, was
genau man abfragen möchte, d. h. wie die Methode oder Eigenschaft o. ä.
lautet, über die man etwas wissen will. Und da bei vielen Methoden auch
noch unterschiedliche Parametersätze möglich sind, muss man natürlich
auch noch vorher genau wissen, welchen Satz man zu verwenden gedenkt.
Aber wenn ich das alles schon *weiß*, dann brauch ich keine
Dokumentation mehr.
Abgesehen davon, dass man diese Funktionen /selbst/ überhaupt erst mal
kennen muss, und natürlich die dafür benötigten Parameter. Ihre Namen
und möglichen Parameter könnte man theoretisch natürlich einer
vernünftigen Dokumentation entnehmen - so es eine gäbe. Tut es aber
nicht. Womit sich die Katze in den eigenen Schwanz beißt ...
Wesentlich besser wird das noch durch das darauf aufbauende wunderbare
Werkzeug Xray, das diese Informationen noch viel verständlicher
aufbereitet (Ich fand das so hilfreich, dass ich eine deutsche
Übersetzung erstellt habe). Man muss sich nur die eventuell
interessanten Eigenschaften und Methoden raussuchen
Genau das *ist* doch das Problem: Um die überhaupt raus suchen zu
*können*, musst du erst mal *wissen*, was es denn überhaupt für
(möglicherweise interessante) Methoden und Eigenschaften in dem Objekt
*gibt*.
In einer vernünftigen Dokumentation kann man all das und noch viel mehr
*nachlesen*; bei UNO musst du mit diesem Wissen *geboren* sein.
Eine gewisse Eigenrecherche und anschließendes Ausprobieren ist bei
einer solch komplexen Materie gar nicht zu vermeiden, und da sammelt
sich Wissen auch nur sukzessive an.
Systematische Darstellungen haben Andrew Pitonyak, Thomas Krumbein und -
am umfassendsten - Bernard Marcelly & Laurent Godard gegeben, aber auch
in einem Buch von kanpp 1000 Seiten (Marcelly/Godard, nicht die neueste
Version) kann man nur die einigermaßen wichtigeren Situationen behandeln.
In diesem Licht verstehe ich deinen "Hass" eigentlich nicht, weil es gar
nicht nötig ist, dich mit der Hierarchie herumzuschlagen, du findest ja
mit Xray (was kostenlos ist und in Sekunden installiert) alles direkt
beim Objekt.
Eben: Welches Objekt? Normalerweise starte ich mit einem *Problem*,
nicht mit einem *Objekt*. Zu dem für die Lösung dieses Problems
notwendigen Objekt muss ich mich erst mal *durcharbeiten*. Da hilft auch
nicht dein (wenn ich nicht wüsste, dass du es nicht so gemeint hast,
schon fast zynisch klingender) Verweis auf Eigenrecherche. Ich würde
diese Eigenrecherche ja durchaus gerne *durchführen*, wenn es eine
Dokumentation o. ä. *gäbe*, in der ich recherchieren *könnte*.
Gibt es aber nicht; auch dein hochgelobtes xray bietet das nicht,
sondern ur die Dokumentation zu Methoden und Parametern, die ich
*vorher* schon *kennen* muss, um sie abfragen zu können. Es kann *nicht*
dabei *helfen*, diese Eigenschaften und Methoden überhaupt erst mal zu
*finden* (abgesehen davon,dass das Tool anscheinend seit 2 Jahren nicht
mehr angeboten wird; http://bernard.marcelly.perso.sfr.fr ist jedenfalls
schon so lange down).
Und systematische Darstellungen in mehreren Büchern. Aber
ohne Aufwand lernt man den Umgang mit mit einem komplexen System eben nicht.
Ich *würde* den Aufwand ja gerne *betreiben*, wenn es irgend eine
vernünftige Dokumentation *gäbe*. Aber auch die von dir angesprochenen
Bücher (zumindest die ich kenne) sind nicht besser strukturiert
(abgesehen davon, dass man heutzutage eigentlich eine
Online-Dokumentation erwarten kann).
Wolfgang, dem aber leider offensichtlich nur die Möglichkeit bleibt,
Buddhist zu werden, und dann darauf zu hoffen, dass er in seinem
nächsten Leben vielleicht mit diesem Wissen geboren werden wird :-(
--
Durch Donald Trump ist mir endgültig klar geworden: Es ist
nicht der Turm von Pisa, der schief steht, es ist die Welt!
--
Liste abmelden mit E-Mail an: users+unsubscribe@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/
Datenschutzerklärung: https://www.documentfoundation.org/privacy
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.