Thread Perlartikel auf rolfrost.de
(10 answers)
Opened by rosti at 2011-07-31 16:39
RaisError ist eine gute Sache. Sie ermöglicht dem Programmierer, das Programm oder einen Abschnitt einfach sterben zu lassen. Ein fehlgeschlagenes connect oder prepare ist wohl in jedem Fall ein Grund für einen Abbruch, bei execute zumindest in den meisten Fällen.
Mit deinem eval zwingst du jedoch den Anwender wieder, bei jedem Aufruf ein "or die" anzuhängen. Zudem finde ich es unschön, auf $@ zuzugreifen, wenn das eval eine subroutinen-ebene tiefer liegt. Mit dem Modul nimmst du dem User den Segen der RaiseError-Option weg. Die meisten DBI-aufrufe sollten, wie schon gesagt, sowieso zu einem Abbruch führen, lediglich bei einzelnen Statements möchte man eventuell den Fehler selber abfangen und darauf reagieren, dann packt man im skript selber ein eval drumherum. Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |