Hi,
ich hab mal eine allgemeine Frage zu Perl und cgi.pm.
In letzter Zeit werden sehr viele Anfragen der Form, "wie löst man $Problem in Perl"
mit einem Skriptbeispiel beantwortet, welches oben mit "use CGI:standard;" beginnt.
Danach kommen dann ein oder zwei Aufrufe aus dieser Bibliothek, und $Problem
ist gelöst.
eben das ist m. E. der Sinn einer Antwort: Die Lösung eines Problems, in einer Form, die der Fragesteller versteht.
Sicherlich könnte Cheatah dem Fragesteller neben den drei Zeilen, die sein Problem lösen, weitere 30+ Zeilen Perl posten, welche den Einsatz von CGI.pm überflüssig machen.
Aber warum ein zweites Problem lösen, das vom Fragesteller gar nicht als solches angesehen wird, wenn dabei die Komplexität der Antwort um Faktor 10+ zunimmt?
Deshalb befürworte ich (im Gegensatz etwa zu Wolfgang Wiese) die Verwendung von CGI.pm gerade bei Antworten im Forum uneingeschränkt. Die meisten Fragesteller werden damit schnell und zuverlässig bedient.
Überlege selbst, wie lange es dauert, bis ein Anfänger zum ersten Mal eine Lösung realisieren muß, bei der Performance wirklich eine Rolle spielt! Bei mir war es noch nie der Fall, daß ich CGI.pm hätte "einsparen" wollen. Und wenn es denn so weit ist, kann der dann erfahrenere Entwickler selbständig die Archivsuche bemühen und nach Hinweisen suchen, welche seine Anwendung performanter machen helfen.
Gerade für Perl-Anfänger sind dann imho eher solche Beispiele wie im selfhtml cgi-Kapitel lehhreich als ein Funktionsaufruf aus einem Modul
Eben das sehe ich anders. Wenn Dich jemand auf der Straße nach dem Weg fragt, erklärst Du ihm dann das vollständige Deutsche Verkehrsrecht?
Oder anders formuliert - ab wann bzw. welcher Komplexität lohnt sich die Verwendung
von Modulen wie cgi.pm wirklich?
Ich würde sie genau anders herum stellen, nämlich: Ab welcher Performance-Anforderung aufwärts ist man gezwungen, die Hauptstärke von Perl, nämlich die vorhandenen Module, zugunsten sekundärer Eigenschaften (in diesem Falle ggf. Performance) in Frage zu stellen?
Bei *jedem* kleinen Projekt würde ich CGI.pm verwenden, eben weil es dort egal ist, Arbeit spart und potentielle Fehler bei der eigenen Implementierung ausschließt. Tuning ist m. E. der letzte Schritt einer Entwicklung, nicht der erste.
mfG - Michael