Da hast Du meinen Artikel nicht richtig gelesen.
Doch, jetzt sogar ein zweites Mal, um sicherzugehen dass ich keinen Aspekt übersehen habe, aber die Kritik bleibt bestehen.
Denn ich zeige da sehr wohl die Alternativen auf.
Ich habe ja erstmal kritisiert, dass im Beitrag keine nachvollziehbaren Gründe gegen Errorlogging genannt werden.
Es ist unkollegial!
Deine Alternative heißt
RaiseError
, damit teilst du DBI mit,
Falsch! RaiseError ist nicht auf DBI beschränkt!
Und ich halte es auch für keine gute Idee den EndnutzerInnen Perl-Exceptions vor die Füße zu werfen. Im besten Fall ignorieren sie die Meldung nach kurzer Irritation.
Unsinn. Der Benutzer weiß doch gar nicht, dass hinter der Fehlermeldung eine Exception steckt!
Beispiel:
# Benutzer gibt ein Datum ein
my $date = Date->new( $self->param('date') )
or return $self->errmsg($@);
Der Benutzer sieht die Fehlermeldung die er gar nicht ignorieren kann! Und um das was da drinsteht, muss sich der Programmierer gar nicht kümmern, das wird in der Klasse Date
geregelt. Der Programmierer muss auch nicht weiter darüber nachdenken, wo er die Fehlermeldung herbekommt, er nimmt ganz einfach $@
da steht sie nämlich drin.
Das Einzige was der Programmierer der Anwendung zu prüfen hat ist, ob mit der Benutzereingabe das Objekt erstellt werden konnte. Am Ende wirds ganz einfach!
MfG