i-netlab: Warum ein CGI in PERL schreiben

hallo,

ein CGI muss ja nun nicht unbedingt in PERL geschrieben sein, es gibt auch andere Script~ oder Programmiersprachen.

Ein paar Punkte habe ich zusammengekriegt warum ich meine CGIs in PERL schreibe, 6 Punkte welche wahrscheinlich leicht zu wiederlegen, auf jeden Fall nicht objektiv sind:

1. PERL ist leicht zu erlernen,
2. es gibt eine Vielzahl von Modulen (CPAN) welche auch von einem Anfänger leicht verwendet werden können,
3. PERL hat viele eigene Funktionen für strings, scalare, arrays und hashes,
4. die Stärken von PERL liegen im Sortieren und in der  Arbeit mit Dateien,
5. einfaches Einbinden von Shell Aufrufen,
6. es ist leicht, eigene Libraries oder Module zu schreiben und einzubinden...

Warum also PERL?

Gruss,

Rolf

  1. Halihallo Rolf

    Ein paar Punkte habe ich zusammengekriegt warum ich meine CGIs in PERL schreibe, 6 Punkte welche wahrscheinlich leicht zu wiederlegen

    deshalb würde ich die nicht als Argumente benutzen. Es gibt mindestens genausoviele für php (z. B.).

    Warum also PERL?

    1. Weil man nur Perl kann (dann soll man es auch verwenden)
    2. Weil man auch auf Systemebene (war ja ursprünglich auch für die Systemadministration/-automatisation gedacht) gut/besser damit arbeiten kann.
    3. Weil es CPAN gibt (bei php ist man etwas "abhängiger" auf die Willkühr der Entwickler)
    4. Weil PHP/ASP/Coldfusion/... eigentlich nur für Internet gemacht wurden.

    ... auch schwache Argumente.

    => Fazit: Es gibt keine eindeutige und nichtwiederlegbaren Argumente. Jeder soll das machen, wozu er Lust hat. Am Ende ist nur eines wichtig: Software soll erstellt werden. Wie / wodurch ist nebensächlich.

    Ich hab mich, wie du auch, an Perl gewöhnt und programmiere daher auch auf Perl. Andere mögen PHP lieber, also sollen sie auf PHP programmieren. Fakt bleibt, dass man "fast" mit jeder Programmiersprache "fast" alles machen kann, wie kompliziert und umständlich, ist eine andere Frage und lässt sich auch nicht veralgemeinern.

    Viele Grüsse

    Philipp

    PS: Nebenbeigesagt ist dies ja ein ziemlich vielbesprochenes Thema und ich habe noch keinen Thread gesehen, wo eine allgemein gültige, unwiederlegbare Lösung genannt wurde. Frag also nicht, sondern tue es einfach :-)

    1. Sup!

      Im übrigen schreibt man widerlegen nicht mit "IE".

      Gruesse,

      Bio

      1. Im übrigen schreibt man widerlegen nicht mit "IE".

        Und dieser Fehler ist ihm auch noch im vorletzten Satz passiert... dabei hatte er es fast geschafft :-(

      2. Im übrigen schreibt man widerlegen nicht mit "IE".

        Naja, aber wMozilladerlegen sieht auch bescheiden aus ;-)

        Der Joker

      3. Halihallo Bio

        Im übrigen schreibt man widerlegen nicht mit "IE".

        Bin mit Microsoft-Streptokokken infiziert. Aber wenn sonst keine Fehler vorhanden sind, die man positiv kritisieren kann, danke für dein indirektes Lob :-)

        Viele Grüsse

        Philipp

  2. Warum also PERL?

    Weil es fast nur Webspace mit Perl-Unterstützung gibt, wenn es um CGI geht? Nicht jeder hat seinen eigenen Server und bestimmt selber, welche Module installiert sind...

    Ausserdem ist man mit Perl unabhängiger... die Sprache ist weit verbreitet, man kann sich mit vielen darüber austauschen, kann seine Scripts auf fast jedem Webspace verwenden, usw.

    Grüsse
    Lactrik

    1. Hallo,

      Warum also PERL?

      Weil es fast nur Webspace mit Perl-Unterstützung gibt, wenn es um CGI geht?

      Nicht mehr. Das war sogar vor noch einem Jahr der Fall, aber heute ist eher umgekehrt. Es findet sich leichter ein Anbieter mit PHP als mit Perl.

      Nicht jeder hat seinen eigenen Server und bestimmt selber, welche Module installiert sind...

      Das gilt aber für Perl ebenso! (z.B. eine meiner Probleme)

      Ausserdem ist man mit Perl unabhängiger... die Sprache ist weit verbreitet, man kann sich mit vielen darüber austauschen, kann seine Scripts auf fast jedem Webspace verwenden, usw.

      Das gilt für eine handvoll Sprachen. Und wie gesagt: es gibt für alles ein pro und ein kontra. ;-)

      Grüße
      Thomas

  3. Hallo,

    1. PERL ist leicht zu erlernen,

    das ist ein Punkt den ich immer wieder in Verbindung mit Perl gelesen
    habe allerdings nicht nachvollziehen kann. Wie ist das bitte gemeint?
    Leicht zu erlernen wenn man schon Erfahrung im Programmieren hat?

    Bisher kann ich nur HTML & CSS, was ja nicht mit einer Programmier-
    sprache gleichzusetzen ist. Irgendwann habe ich mir dann mal einige
    Seiten zum Thema Perl & CGI angeschaut, weil ich mehr darüber erfahren
    und es irgendwann auch beherrschen wollte, u.a.
    http://www.phy.uni-bayreuth.de/~btpa25/perl/perl_main.html
    http://www.tekromancer.com/perl/inhalt.html
    und auch einige englische Dokumentationen.

    Doch so motiviert ich die Sache anfangs anging so schnell gab ich auch
    wieder auf, weil mir das ganze im Vergleich zu HTML & CSS zu "abstrakt"
    erschien.

    Woran kann das liegen, dass mir das Ganze nicht so klar werden wollte?
    Habe ich zu schnell wieder aufgegeben, weil mir der Einstieg so schwer
    erschien?
    Habe ich mir die falschen Dokumentationen angeschaut?
    Macht die Tatsache, dass ich bisher nur mit Windows gearbeitet habe
    denn Einstieg schwerer? Ich habe zwar erste Gehversuche mit Linux
    Mandrake gemacht, habe aber ansonsten keine Erfahrung mit Unix-
    Systemen.

    Es ist nicht so, dass ich nicht gesucht habe aber kennt jemand von
    euch vielleicht Perl-Dokumentationen die eher für Leute geeignet sind
    die noch _garkeine_ Erfahrung im Programmieren haben?
    Oder ist für den Anfang eine andere Programmiersprache besser geeignet?

    Gruß
    Paul

    1. Hi,
      bevor ich mit Perl anfing, konnte ich auch nur ein wenig HTML, Javascript und CSS. Ich wusste nicht mal wie Perl eigentlich funktioniert, oder geschweige denn, wie man sich die CGI Schnittstelle vorstellen kann.
      Ich bin auch nicht jemand, der gleich alles 100% begreift, aber trotzdem kann ich sagen, dass ich in Perl schon relativ fortgeschritten bin. Ich kann zB Tools schreiben, die mir aus Grafiken Thumbnails erzeugen + deren dazugehöriger HTML Dateien. Ich kann auch schon Foren schreiben, und das ganze Wissen habe ich hauptsächlich aus nur 2 Büchern. Natürlich habe ich auch viele Tips und Tricks von hier, aus dem Selfhtml Forum, aber worum es geht ist einfach, dass du dir vielleicht ein, zwei Bücher kaufen solltest, weil Doku's aus dem Internet können nie so genau, oder umfangreich sein, wie ein Buch. (wobei vielleicht die Selfhtml Doku zu Perl relativ gut ist, aber zugegeben; ich habe sie nie gelesen :) )

      $xNeTworKx.

      1. Hi,

        bevor ich mit Perl anfing, konnte ich auch nur ein wenig HTML, Javascript und CSS. Ich wusste nicht mal wie Perl eigentlich funktioniert, oder geschweige denn, wie man sich die CGI Schnittstelle vorstellen kann.

        Abgesehen davon, dass ich kein JavaScript kann, gehts mir genauso. ;)

        [...] Ich kann auch schon Foren schreiben, und das ganze Wissen habe ich hauptsächlich aus nur 2 Büchern. Natürlich habe ich auch viele Tips und Tricks von hier, aus dem Selfhtml Forum, aber worum es geht ist einfach, dass du dir vielleicht ein, zwei Bücher kaufen solltest, weil Doku's aus dem Internet können nie so genau, oder umfangreich sein, wie ein Buch. (wobei vielleicht die Selfhtml Doku zu Perl relativ gut ist, aber zugegeben; ich habe sie nie gelesen :) )

        Naja, als ich HTML und CSS schon ein wenig konnte, habe ich mir ein
        Buch über HTML angesehen und war enttäuscht darüber wie wenig das Buch
        im Vergleich zu Selfhtml zu bieten hatte. Ok, es war nicht gerade ein
        Wälzer aber inhaltlich hat es mich nicht gerade begeistert, seitdem
        zweifle ich daran ob Online-Dokus nicht besser sind als viele Bücher.
        Naja, wie gesagt, das war nur die eine Erfahrung weshalb das wohl kaum
        mit viel Wahrheit behaftet sein wird...

        Gruß
        Paul

  4. hallo,

    vielen Dank Euch allen - für Eure Antworten!

    Wiederlegen, widerlegen - mit I oder IE ist ja nun wirklich scheißegal und nicht den Tipp auf die Tastatur wert.

    Phil, ich werd Deine Worte überschlafen und die nächsten Tage einen neuen kleinen Artikel schreiben zum Thema *Why PERL*.

    Bis Bald! Rolf

    http://i-netlab.de/cgi-bin/karibik.cgi

    1. Halihallo Rolf

      Wiederlegen, widerlegen - mit I oder IE ist ja nun wirklich scheißegal und nicht den Tipp auf die Tastatur wert.

      Na, Bio wollte nur mal wieder auf'n Putz hauen :-)

      Phil, ich werd Deine Worte überschlafen und die nächsten Tage einen neuen kleinen Artikel schreiben zum Thema *Why PERL*.

      Werd ich mir dann mal ansehen ( auf i-netlab.de schätze ich? )

      http://i-netlab.de/cgi-bin/karibik.cgi

      Muss ich das nächste mal auch machen, von Brasilien hab ich leider keine Fotos...

      Viele Grüsse

      Philipp

  5. Hi,

    mal leicht abstrahiert:

    1. [...] ist leicht zu erlernen,
    2. es gibt eine Vielzahl von Modulen [...] welche auch von einem Anfänger leicht verwendet werden können,
    3. [...] hat viele eigene Funktionen für strings, scalare, arrays und hashes,
    4. die Stärken von [...] liegen im Sortieren und in der  Arbeit mit Dateien,
    5. einfaches Einbinden von Shell Aufrufen,
    6. es ist leicht, eigene Libraries oder Module zu schreiben und einzubinden...

    Du hast Python recht gut beschrieben. Nur dem Punkt 4 kann ich nicht ganz zustimmen; dafür hast Du die hervorragende Objektorientierung und einige andere Vorteile nicht erwähnt.

    Meiner Ansicht nach gibt es vor allem zwei Vorteile, die für Perl sprechen würden: a) Man kann es bereits und b) es ist schon installiert. Ansonsten gibt es kaum einen Grund, Perl Python vorzuziehen - und genauso wenig gibt es einen, Python Perl vorzuziehen. Die Wahl der Sprache ist von vielen Faktoren abhängig und kann niemals nur anhand der Sprache beantwortet werden.

    Cheatah

    1. Hi!

      Meiner Ansicht nach gibt es vor allem zwei Vorteile, die für Perl sprechen würden: a) Man kann es bereits und b) es ist schon installiert. Ansonsten gibt es kaum einen Grund, Perl Python vorzuziehen - und genauso wenig gibt es einen, Python Perl vorzuziehen. Die Wahl der Sprache ist von vielen Faktoren abhängig und kann niemals nur anhand der Sprache beantwortet werden.

      Was ist an Python besser als an PHP? Denn bei PERL vs. PHP hast Du doch immer entschieden Partei für PERL ergriffen. Ich dachte PHP und Phyton seien sich sehr ähnlich?!

      Grüße
      Andreas