Schrift
[thread]3056[/thread]

Dynamische Navigation mit HTML::Template (Seite 3)

Leser: 2


<< |< 1 2 3 >| >> 23 Einträge, 3 Seiten
Ronnie
 2007-05-02 01:01
#28985 #28985
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=tonewheel,01.05.2007, 22:25]das ist schon klar, aber ich habe etwas die Zusammenhänge verloren. Wo müsste dieses Skript praktisch stehen? Ist es das Gleiche, das auch das Template aufruft und den Content darstellt (da Du von "zentral" sprichst, scheint das nicht der Fall). Und was genau meinst Du mit "controller=search"?

[quote=Ronnie,01.05.2007, 21:58]
Nur nicht beunruhigen lassen ;)[/quote]
Nee ;) Aber frustrierend kann es trotzdem sein, wenn man nur wenig versteht.

Gruß[/quote]
Ja, ich würde es in das Skript packen, das auch den Content via Template zur Verfügung stellt (nur eben ohne noch HTML via CGI.pm zu erzeugen). Man kann durchaus auch größere Webapplikationen über ein zentrales CGI steuern, das sich die Applikationslogik aus einzelnen Controllern holt, z.B. einem für das Suchen irgendwelcher Daten, usw.

Alternativ kann es aber auch sinnvoll sein das Ganze auf verschiedene Skripte aufzuteilen und einen gemeinsamen Controller/Modul für die Navigation zu verwenden. Wichtig ist nur das man auf Konsistenz achtet und vermeidet das Code doppelt vorgehalten wird.

Generell ist es schwierig eine "richtige" Antwort anzubieten. In Perl ist es immer möglich mehrere Wege zu verfolgen. Man muss selbst entscheiden was man für praktikabel hält. Wobei du auf viele Fragen hier im Forum völlig unterschiedliche Antworten bekommen wirst, weil jeder eine andere Vorstellung davon hat, wie man eine Aufgabe lösen kann.

Wenn du eine größere Webapplikation im Auge hast, ist es evtl. sinnvoll sich gleich mit einem Framework wie Catalyst, Jifty, Gantry zu beschäftigen. Diese können einem sehr viel Arbeit abnehmen.

Zu Anfang kann jede Programmieraufgabe sehr frustrierend sein. Entweder sieht man den Lösungsweg nicht, oder es gibt derer zu viele. Ich persönlich habe schon wochenlang über Problemstellungen gegrübelt. Früher ging es mir hier auch oft so, dass ich Programmbeispiele sah, die mir eher esoterisch erschienen. Ist nur eine Frage der Zeit. Deswegen meinte ich nicht aus der Ruhe bringen lassen.

Es gibt ein Essay von Peter Norvig (auf deutsch unter: http://userpage.fu-berlin.de/~ram/pub/html_jf47ht14Ht/21-tage) bei dem es darum geht das man Programmieren eher in 10 jahren, denn in 21 Tagen lernen soll/kann. Daran halte ich mich seit Jahren. Ist immer wieder spannend etwas dazulernen zu können. Auch wenn es manchmal länger dauert.

Gruß,
Ronnie
tonewheel
 2007-05-02 20:42
#28986 #28986
User since
2006-10-01
182 Artikel
BenutzerIn
[default_avatar]
[quote=Ronnie,01.05.2007, 23:01] Alternativ kann es aber auch sinnvoll sein das Ganze auf verschiedene Skripte aufzuteilen und einen gemeinsamen Controller/Modul für die Navigation zu verwenden. Wichtig ist nur das man auf Konsistenz achtet und vermeidet das Code doppelt vorgehalten wird.
[/quote]
Ist klar und vermutlich wird es dann übersichtlicher als in einem Script. Was mir immer noch nicht klar ist, wie baut man den Tree der Links so auf, dass er immer wieder gut erweiterbar ist und auch auf jeder Seite upgedatet wird? In Deinem Beispiel hattest Du die Links im Programmcode, ist das auch im Anwendungsfall (also bei einem kleinen Projekt) sinnvoll, oder holt man die Einträge besser aus einer (sinnvollerweise xml)-Datei?

Quote
Generell ist es schwierig eine "richtige" Antwort anzubieten. In Perl ist es immer möglich mehrere Wege zu verfolgen. Man muss selbst entscheiden was man für praktikabel hält. Wobei du auf viele Fragen hier im Forum völlig unterschiedliche Antworten bekommen wirst, weil jeder eine andere Vorstellung davon hat, wie man eine Aufgabe lösen kann.

Ja, das ist freilich klar.

Quote
Wenn du eine größere Webapplikation im Auge hast, ist es evtl. sinnvoll sich gleich mit einem Framework wie Catalyst, Jifty, Gantry zu beschäftigen. Diese können einem sehr viel Arbeit abnehmen.

Da hatte ich Anfangs dran gedacht, dann aber schnell wieder verworfen. Klar ist es hilfreich, aber ich finde es besser, erstmal die Basis zu verstehen (gerade im Bereich html bin ich kompletter Anfänger, ausser, dass ich mal ein paar bestehende Seiten mit Hilfe von selfhtml geändert habe), bevor man Tools benutzt, die im "Hintergrund" arbeiten und man so nicht erfährt, worauf alles basiert. Ausserdem muss man auch in diese Tools erstmal viel Energie investieren, bevor was Sinnvolles heraus kommt, nehme ich an.

Quote
Zu Anfang kann jede Programmieraufgabe sehr frustrierend sein. Entweder sieht man den Lösungsweg nicht ... bei dem es darum geht das man Programmieren eher in 10 jahren, denn in 21 Tagen lernen soll/kann. Daran halte ich mich seit Jahren. Ist immer wieder spannend etwas dazulernen zu können. Auch wenn es manchmal länger dauert.

Das ist völlig klar. Ich halte auch nichts von den 21 Tage-Artikeln, das kann nicht funktionieren. Programmieren ansich tue ich schon recht lange, jedoch mit C# und VB und auch nur direkte Win-Anwendungen. Webanwendungen und überhaupt auch Perl sind sehr neu für mich. Doch die Win-Welt ist mittlerweile beendet (hab ich eh nur zum Programmieren benutzt, generell benutze ich ein Betriebssystem, kein Windows) und ich wollte mich einer anderen Sprache widmen, dabei habe ich mich nach einigem Umsehen für Perl entschieden. Probleme, die ich bei C# schon hatte, war ein gutes Design. Es hat immer lange gedauert, bis die Basis mal stand und man erst dann richtig implementieren konnte. Vor diesen Problemen stehe ich jetzt eben erneut. Man muss eben einfach starten und ein Gefühl für das ganze Handling bekommen.


Grüße
Ronnie
 2007-05-02 21:15
#28987 #28987
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Hallo tonewheel,
Quote
Was mir immer noch nicht klar ist, wie baut man den Tree der Links so auf, dass er immer wieder gut erweiterbar ist und auch auf jeder Seite upgedatet wird? In Deinem Beispiel hattest Du die Links im Programmcode, ist das auch im Anwendungsfall (also bei einem kleinen Projekt) sinnvoll, oder holt man die Einträge besser aus einer (sinnvollerweise xml)-Datei?

Bei einem kleinen Projekt kommt XML durchaus in Frage, oder ein ähnliches Format wie bereits erwähntes CPAN:YAML. Wenn es nicht von Hand bearbeitet werden soll, könnte auch direkte binäre Serialisierung mit CPAN:Storable in Frage kommen. Wenn der Inhalt der Applikation sehr dynamisch ist würde ich aber immer eine Datenbank in Erwägung ziehen. Bei kleinen Sachen kommt CPAN:DBD::SQLite in Frage, bei größeren eine Datenbank nach Wahl.
Quote
Das ist völlig klar. Ich halte auch nichts von den 21 Tage-Artikeln, das kann nicht funktionieren. Programmieren ansich tue ich schon recht lange, jedoch mit C# und VB und auch nur direkte Win-Anwendungen. Webanwendungen und überhaupt auch Perl sind sehr neu für mich. Doch die Win-Welt ist mittlerweile beendet (hab ich eh nur zum Programmieren benutzt, generell benutze ich ein Betriebssystem, kein Windows) und ich wollte mich einer anderen Sprache widmen, dabei habe ich mich nach einigem Umsehen für Perl entschieden. Probleme, die ich bei C# schon hatte, war ein gutes Design. Es hat immer lange gedauert, bis die Basis mal stand und man erst dann richtig implementieren konnte. Vor diesen Problemen stehe ich jetzt eben erneut. Man muss eben einfach starten und ein Gefühl für das ganze Handling bekommen.

Ich habe meine ersten Gehversuche damals mit ASP.NET gemacht. Mir war auch der Abstraktionsgrad zu hoch. Es funktionierte (oder auch nicht) ohne das ich so recht wusste wieso. Die Entscheidung für Perl war eher zufällig, zumal damals Python und Ruby noch nicht so populär waren. Für Perl gab es genügend Bücher. Leider schwächelt da O'Reilly mittlerweile sehr und bringt zuviel Populär-IT Bücher raus. Das betrifft aber nicht nur Perl.

Perl hat den Vorteil, das man viel existierende Module nutzen kann, die man an einem Ort findet (CPAN). Man kann sehr unterschiedliche Programmierweisen verfolgen, ohne das einem Perl einen Stein in den Weg legt.

Das entwickeln größerer Applikationen - und vor allem die strukturellen Entscheidungen, sind aber jedesmal eine neue Herausforderung. Mit jeder neuen Technik die man lernt, jedem neuen Konzept das man durchdringt (z.B. MVC-Pattern), ändert sich die Betrachtungsweise wie ein Problem sinnvoll zu lösen ist. Eine Empfehlung könnte hier Damian Conways: "Perl - Best Practices" sein, das ich leider auch noch nicht gelesen habe, hier im Forum aber oft empfohlen wurde.

Wenn ich mir heute älteres Zeug von mir betrachte, denke ich wie konnte ich das damals nur so machen - aber zu diesem Zeitpunkt erschien es mir einfach schlüssig. Aus meiner Sicht ist das aber einer der spannenderen Teile der Programmierung. Tatsächlich geht es vielen Perl-Programmierern (und anderen auch) so, dass wir irgendwann Lösungen nach ihrer Eleganz betrachten. Das klingt ein wenig esoterisch, aber man entwickelt im Laufe der Zeit ein Gefühl dafür.

Probier einfach aus, was dir gefällt und diskutiere es hier im Forum!

Gruß,
Ronnie
<< |< 1 2 3 >| >> 23 Einträge, 3 Seiten



View all threads created 2007-05-01 13:11.