Tach!
Don't let me think, das muss ich schon noch zur Genüge bei den wirklichen Problemen der Geschäftslogik.
Das war eigentlich der Grund dafür, dass ich es so gemacht habe...
Ich kann dich ja verstehen, und aus deiner Sicht ist auch alles in Ordnung. Du kennst das Projekt und weißt, wie es arbeitet. Nur für den Außenstehenden ist es nicht direkt ersichtlich, wie es zum Ergebnis des Destruktor-Codes kommt. Man muss wissen, dass der Destruktor verantwortlich ist und auch noch, wann er aufgerufen wird.
Was kann einfacher sein, als einmal im Konstruktor ein log-Objekt anzulegen mit
Definiere "einfacher". Ist es wichtiger, Code einfacher zu schreiben oder Abläufe einfacher zu durchschauen?
Ich finde eigentlich, dass das für einen potentiellen Plugin- Entwickler eher eine enorme Arbeitserleichterung ist, wenn die komplette Infrastruktur für das Logging schon vorhanden ist. Zumindest, solange es eine ordentliche Doku dazu gibt.
Doku liest doch keiner. Da steht sowieso nie das drin, was man wissen will ...
Oder liege ich da so falsch?
Beim Programmieren kann man nicht immer eine bestimmte Vorgehensweise als definitiv falsch bezeichnen, zumal ja wie in deinem Fall offensichtlich auch das gewünschte Ergebnis erreicht wird. Ich möchte dir lediglich aufzeigen, das es manchmal bessere Orte für Code gibt, als den Destruktor. Mein Destruktor schließt am Ende des Arbeitstages lediglich das Zeug vom Schreibtisch in den Schrank ein. Deiner aber nimmt vorher auch noch den Stapel der erzeugten Geschäftsbriefe, tütet sie in Umschläge, frankiert diese und legt sie in den Postausgang. Mein Arbeitstag sieht diese Handlungen ebenfalls vor, aber das ist eine Aktion, die ich dann doch lieber extra und explizit anstoße. Es ist dann auch einfacher, sie mal an andere Stelle zu verlagern. Bei dir muss man Feierabend machen, damit es die Post versendet. Das kann man auch dokumentieren, aber "Zum Post versenden machen Sie bitte Feierabend!" ist schon etwas seltsam.
dedlfix.