Bernhard Peissl: ach, es gibt soviel was ich fragen müsste !

Hallöchen!

Ich hätte heute mal eher allgemeine Fragen:

  1. Wieviel Zeilen ca. kann man einem (Perl-)script zumuten. Ist es besser, alle Funktionen für eine Aufgabe auch in eine Datei zu packen, oder sollte man es wenn möglich auf mehrere Dateien aufteilen? Ich hab jetzt bei meinem Projekt eine - meiner Meinung nach - ziemlich grosse Datei (~1000 Zeilen) ich habe zwei Parameter, die ich immer übergebe, und anhand von denen ich dann die zugehörigen Funktionen aufrufe. Im Klartext bei meiner Kursverwaltung ich habe ein Script zum Anlegen eines neuen Kurses und eines zum Ändern eines Aktuellen Kurses. Hier mal wie ich letzteres - grob - gegliedert habe:

=> Kursübersicht -> anzeigen (dort kann man für jeden Kurs auswählen ob man Detailprogramm oder Termine ändern will)

=> Detailprogramm -> anzeigen (Formularseite mit Daten in den Textfeldern zum Ändern)
=> Detailprogramm -> speichern (speichert neues Detailprogramm)

=> Termine -> anzeigen (Auswahlliste, welchen Termin man ändern will)
=> Termine -> ändern (Formular zum Ändern der Termindaten)
=> Termine -> speichern (speichert neuen Termin)

Das habe ich bei mir mit Unterprogrammen in eine Datei gestopft. Aber vielleicht wäre es ja besser die einzelnen Unterfunktionen auch
in seperate files zu stecken. Würde gern mal wissen wie ihr das so macht. Lieber Chaos im Cgi-bin oder Chaos im Script ;-)
Oder gibts ne Lösung ohne Chaos ?

  1. Bisher habe ich immer nur "Bemmerl"-scripts gemacht, aber das hier ist jetzt echt ein Riesenprojekt (für meine Verhältnisse). Und ein zweites grosses Problem ist mir dadurch erst jetzt klar geworden: Die Parameter-Versenderei. Ich muss immer irreviel Parameter hinundher schicken. Erst mal die, die ich gleich am Anfang immer abfrage, dann welche, die mir den Pfad zu den Dateien angeben, den Kurstitel, den brauch ich nämlich auch auf jeder Seite, und und und ...

Oder macht das eh nix?

Da ich noch nicht so erfahren bin, hauts mich da ziemlich durcheinander. Vielleicht gibts da ja ein paar Tricks wie man solche Sachen vermeiden könnte.

Ich hab ja versucht, mir bevor ich die Struktur der "Datenbank" ausgedacht habe, alles auszurechnen was ich an Daten so brauche, und wo ich sie herbekomme, aber ich konnte ja nicht schon im Kopf mal alles vorher durchprogrammieren, um zu sehen, was da für Probleme auftauchen könnten.

Muss ich alles übern Haufen Hauen, und nochmal von vorn anfangen? Bitte sagt mir das nicht, jetzt wo endlich alles funktioniert (so halbwegs) ;-(

Ich würd einfach gern mal wissen, wie die Profis das so machen (ich weiss, ich weiss mit SQL) Es gibt ja auch noch genug Sachen ohne ;-) Datenbank, mehr so generell.

  1. Ich brauche zum Beispiel auch immer die selben Variablen. Jetzt hab ich mir gedacht, ich definier mir oben mal gleich global die wichtigsten Variablen, und mache in den Funktionen nur my-Variablen, und weise gegebenenfalls auf die Globalen zu. Aber durch das Ständige ausgeben der Formular-Seiten muss ich immer erst schauen, ob die Variablen die ich dazu brauche überhaupt schon einen Wert haben. Und wehe wenn nicht, dann kann ich 1000 Zeilen durchforsten, und schauen warum das blöde Ding keinen Wert hat :-(

Irgendwie verlier ich schön langsam den Durchblick :-(

Ich würd gern irgendsowas hören wie: Druck dir mal die 1000 Seiten aus, schnapp die die Funktionen, schreib dir auf welche Parameter du brauchst, schreib dir auf, welche wohin übergeben werden, ... (oder ist das auch ein Schmarrn ? Ach ich weiss nicht, hoffentlich wisst ihr was!)

liebe Grüsse
Bernhard

  1. Moin,

    was du brauchst, ist eine richtige Predigt ;-)

    Duchsuch das Archiv mal nach dem Begriff "/predigt". Das sollte dir auf die Sprünge helfen.

    Viel Erfolg

    Swen

    1. Hallo Swen!

      Also erst hab ich ja geglaubt du willst mich auf den Arm nehmen, aber ich habs dann gottseidank doch gemacht :-)

      Ist echt ein spitzen Beitrag, aber vielleicht kommen ja noch ein  paar Tips, wär schön!

      liebe Grüsse
      Bernhard

  2. Du schriebst:

    immer abfrage, dann welche, die mir den Pfad zu den Dateien
    angeben,

    Du übergibst doch nicht an ein Perl-Skript auf einem Server
    Pfade, oder?

    Gruß
    O.

    P.S. Kann man sich dein Skript mal *irgendwo* im Netz - äh -
    anschauen und es *ausprobieren*.

    1. Hallo O.! -und wie weiter?

      Du übergibst doch nicht an ein Perl-Skript auf einem Server
      Pfade, oder?

      Nicht direkt. Ich habe meine Kurse untergliedert in die "Bereiche" Aus- und Weiterbildung. Und jeder der Beiden ist wieder unterteilt in mehrere "Gruppen" (ma für Mitarbeiter, stb für Steuerberater, pr für Praktikanten ,...) Und da hab ich mir der Ordnung halber gedacht, ich mach den Verzeichnispfad genauso.

      /cgi-bin/kurse/ausbildung/ma
      /cgi-bin/kurse/ausbildung/pr
      /cgi-bin/kurse/ausbildung/stb ...

      und dazu übergebe ich immer $bereich und $gruppe! Die Detailprogramme enden auf .lva und die Termindateien auf .date. Ausserdem habe ich noch überall eine .info Übersichtsdatei, in der die wichtigsten Daten aller Kurse dieser Gruppe drinnenstehen, die ich für das Anzeigen der Kursübersicht brauche! Als Dateinamen verwende ich $lva_id, die fängt einfach bei 10000 an und wird bei jedem neuen kurs um eins erhöht, und so finde ich dann die einzelnen Dateien!

      P.S. Kann man sich dein Skript mal *irgendwo* im Netz - äh -
      anschauen und es *ausprobieren*.

      Wenn du dir wirklich alle 1000 Zeilen durchsehen willst wäre ich natürlich überhappy :-) Ich werd es gleich mal auf < www.wt-akademie.at/admin/adminKurse.html> legen.

      Bitte schimpf mich aber nicht wegen dem miesen Design auf der richtigen Seite, war mein "erstes Mal" -arbeite gerade an einer hübscheren Version ;-) die auch im NS funktioniert!

      <in freudiger Erwartung />
      liebe Grüsse
      Bernhard

      1. Hi, ich nochmal !

        Also es liegt jetzt oben, du (aber auch die anderen) kannst jetzt so richtig rumspielen. Neuen Kurs anlegen, herumändern was das Zeug hält, löschen, ...

        Dem Code kennt man allerdings an, dass er immer noch im Versuchstadium ist, aber mach mich ruhig zur Sau, sag mir alles was du dumm findest, würde mich mal interessieren, was ein Profi dazu sagt, ich glaube nämlich, dass ich ziemlich dilletantisch und konfus herumprogrammiert habe ;-(

        Also, wenn du Zeit und gute Nerven hast, dann schau ruhig mal vorbei !

        liebe Grüsse
        Bernhard