SGD-Zentrale | CGP02  

SGD - Datenbankentwickler / CGP02
Grundlagen - Teil 2 und Anwendung über CGI

Dieses Dokument übers Dateisystem!
Dieses Dokument übern Server!
Dieses Dokument übers Internet!
Dieses Dokument von WaveLearn!




In diesem letzten Teil arbeite ich vordergründig die Aufgaben ab, während ich die Übungen nur als Begleitung benutze. Ich habe definitiv nicht vor, Perl zu meiner Lieblingssprache werden zu lassen...

Fazit: Fast die gesamte Zeit ging mit unkreativem Suchen nach Dokumentationen für Fehlermeldungen und Modulfunktionen (für das Datenbank-Interface) drauf. Im Vergleich dazu sind die Dokumentationen von PHP, Javascript oder gar C++ geradezu vorbildlich. Die Perl-Entwickler scheinen das HTML- und GUI-Zeitalter verpaßt zu haben: Alle Dokumentation gibt es offenbar nur in ziemlich dünn verlinkter Form und meist nur in purem Reintext, die zudem im Wust von nicht mal vernünftig beantworteten Forenmeldungen ebenfalls hilfesuchender Mitprogrammierer untergehen.

Übungen

Lektion 1: Reguläre Ausdrücke 2:00 Stunden
Lektion 2: Module 0:30 Stunden
Lektion 3: Webserver-Script etwa 5 Stunden

perlinfo

Kontrolle

Aufgabe 1: GUI für einfache Textverarbeitung etwa 2:00 Stunden
Aufgabe 2: Web-GUI für eine CSV-Tabelle etwa 4:30 Stunden

Einsendung
Bewertung

GUI für einfache Textverarbeitung

Das GUI soll folgende Eigenschaften haben:
Die Datenverarbeitung soll enthalten:
Triviale Aufgabe. In PHP innerhalb von wenigen Minuten. Einschließlich Nachschlagen von Funktionsdokumentationen.

Web-GUI für eine CSV-Tabelle

Das GUI soll folgende Eigenschaften haben:
Die zugrundeliegenden Daten sollen aus einer csv-Datei gelesen werden. Die Datei soll eine Zahlenreihe aus Zufallswerten enthalten.

Eigentlich auch alles Kleinigkeiten (na ja, bis auf das Tortendiagramm - da wüßte ich momentan nur sowas wie SVG oder gar VRML, was ich aber zu diesem Zweck nicht aus dem Handgelenk geschüttelt kriege und was das eigentliche Rendern auf dem Client erledigt).

Die CSV-Datenbanktreiber konnten ja noch zur Mitarbeit überredet werden, obwohl der PPM zunächst der Überzeugung war, daß es die Dinger nicht gäbe.
Was über das Perl-Modul DBD-CSV im WWW zu finden ist, entspricht einem technischen Niveau von vor 20 Jahren. Unbrauchbar zum Nachschlagen. Wenn man schon weiß, was man sucht, merkt man durchaus, daß alles da ist, was man früher krampfhaft gesucht hatte. Allerdings braucht man's DANN nicht mehr.
Irgendwie - nachdem ich die Module per Hand reingeholt hatte und noch was fehlte (so ähnlich wie beim anschließenden GD-Problem) - fand er sich dann doch bereit, etwas über Datenbanktreiber zu wissen und holte die nötigen Zusätze rein.

Bezüglich Tortendiagramm schmeiße ich nach stundenlangem Probieren das Handtuch. Das Perl, das ich verwende (ActivePerl-5-8-8-817-MSWin32-x86-257965.msi) weigerte sich vehement daran zu glauben, daß es ein Modul namens "GD" mit irgendeiner Verbindung zu "Graph" gäbe (nix mit GDGraph, GD-Graph, GD::Graph).

UNTERMODULE, die dieses GD lediglich erweitern, kennt es. Soweit ich das oberflächlich verstanden habe, sollten die Module Beschreibungen ihrer Abhängigkeiten enthalten, die zu verwalten einzige Aufgabe und Sinn des "PPM" wäre. Nach Adam Ries sollte man also davon ausgehen dürfen, daß ein GD-Grundlagenmodul für eine GD-Erweiterung automatisch mitinstalliert wird, wenn die Erweiterung installiert wird, nicht wahr?

Mitnichten beim Perl-PPM.

Manuell konnte ich das GD-Modul finden. Das Kopieren der Dateien in den "lib"-Ordner war ja auch nicht das Problem. Aber bei der Fehlermeldung Can't locate loadable object for module GD in @INC (@INC contains: C:/Tools/internet/AMP/Perl/lib C:/Tools/internet/AMP/Perl/site/lib .) at C:/Tools/internet/AMP/Perl/site/lib/GD/Graph.pm line 38\r hört für mich der Spaß auf. Ich habe nämlich keinen Schimmer, wo ich sein "loadable object" herbeizaubern sollte... Aus dem Programmtext jedenfalls geht es für mich als 1-wöchigem Anwender mitnichten hervor.

Ich hab's versucht und es wollte absolut nicht. Perl hat es in den paar Tagen geschafft, dank einer Dokumentation, die an DOS-Zeiten vor rund 20 Jahren erinnert, und dank Ausdrucksweisen, die weit von intuitiv entfernt sind, meine tiefe Abneigung zu gewinnen. Das mit dem "ganz einfach zu bedienenden" "PPM" bezüglich diesem "GD" hat das nochmal abschließend bestätigt.

Das wird wohl leider bestenfalls eine knappe "3" werden, aber jetzt ist der Lehrgang abgeschlossen, basta!

Gesamtaufwand

etwa 14:00 Stunden

für: