Welche Programmiersprache ist die bessere?

Eurer Meinung nach?

Ich wurde schon öfter mal gefrag, warum ich Perl lerne und nicht php oder asp oder JSP oder seit neuerem auch Phyton

Könnt ihr mir mal erklären, welche dieser Sprachen die wohl „bessere-“ / schnellere- / umfangreichere- (in Funktionen) oder vielseitigere Sprache ist? Hab auch schon gehört, das PERL wohl eher am aussterben ist¿ :frowning:

Also, PRO/Contra php, Perl, asp, JSP, Phyton

Oh mann, der Markt mit Programmiersprachen ist ja genauso schnelllebig wie der Computermarkt mit der Hardware :-/

Gruß,
Martin

ps: ich hab das mal hier gepostet, da ich eher ein Fan von PERL bin :smile: Außerdem wusst ich nicht, ob das ok gewesen wäre, wenn ich es in das Allgemeine Forum für Programmierung eingebaut hätte …

Könnt ihr mir mal erklären, welche dieser Sprachen die wohl
„bessere-“ / schnellere- / umfangreichere- (in Funktionen)
oder vielseitigere Sprache ist?

Also, PRO/Contra php, Perl, asp, JSP, Phyton

Es kommt darauf an, was Du machen willst.

Für Datenbanklastige Webapplikationen ist PHP sicherlich eine gute Wahl, da der Schwerpunkt von PHP in der Arbeit mit Datenbanken liegt. PHP trennt allerdings Code und Darstellung nicht (PHP ist HTML Embedded), was zu einem echten Problem wird, wenn Programierer und Designer der Seite 2 verschiedene Leute sind.

Perl erlaubt schnelle Turn-Around-Zeiten und hat sehr mächtige Listen und Zeichenkettenverarbeitungsfunktionen. Ausserdem gibt es für fast alles fertige und jahrelang erprobte Module (siehe http://www.cpan.org/).

ASP ist eine proprietäre M$-Lösung, die im wesentlichen nur auf MS IIS läuft und wie PHP das Problem der Vermischung von Code und Darstellung hat.

JSP ist schnell, mächtig, aber wird leider bisher nur von wenigen Servern/Providern unterstützt. Allerdings sollte man fundierte Kenntnisse in OO-Programmierung und Design mitbringen.

Zu Phyton: Bitte jemand anders fragen … :wink:

Resumee: Nimm was Dir für den jeweiligen Zweck am brauchbarsten erscheint. Jede der o.g. Sprachen hat ihre Vor- und Nachteile, die je nach Anwendungszweck und Entwicklungsverlauf mal stärker und mal weniger stark duchschlagen.

Hab auch schon gehört, das PERL wohl eher am aussterben ist¿ :frowning:

Blödsinn, das halte ich für ein Gerücht.
Perl ist lebendiger denn je …

Klaus

Hi,

Zu Phyton: Bitte jemand anders fragen … :wink:

IMHO vergleichbar mit Perl. Um einiges näher an der Objektorientierung, weitaus starrer in der Handhabe (ein Tupel ist ein Tupel und keine Liste - Perl wären solche Lappalien egal), weniger verbreitet, trotzdem gibt’s viele Module, zwingt zu strukturiertem Code.

Resumee: Nimm was Dir für den jeweiligen Zweck am
brauchbarsten erscheint.

Exakt. Eine Pauschalaussage der Art „x ist besser als y“ zeugt IMHO von Unkenntnis der Materie.

Hab auch schon gehört, das PERL wohl eher am aussterben ist¿

Blödsinn, das halte ich für ein Gerücht.

Ich auch.

Perl ist lebendiger denn je …

…und zwar nicht nur im Internet, wo es er „auch“ denn „vorwiegend“ benutzt wird :smile:

Cheatah

1 Like

danke!
Danke euch Beiden für die gute Darstellung :smile:
Jetzt ist mir mal einiges klarer!

Resumee für mich: Ich bleib bei Perl :wink:

btw: ich studier jetzt balt Informatik *freu* Mal gespannt, ob dda noch etwas bei herum kommt *hoff* Perl kenntnisse sind bei mir nur „selber beigebracht“ und bestimmt „extra dirty code“ :-/ Das nur so zwischendurch :smile:

Bye, und nochml danke!
Martin

Hallo Martin!

Könnt ihr mir mal erklären, welche dieser Sprachen die wohl
„bessere-“ / schnellere- / umfangreichere- (in Funktionen)
oder vielseitigere Sprache ist? Hab auch schon gehört, das
PERL wohl eher am aussterben ist¿ :frowning:

Also, PRO/Contra php

Habe keine Erfahrung mit PHP.

Perl

Habe zu wenig Erfahrung mit Perl, um etwas sagen zu können.

asp

Na ja, Mikroschrott halt, also meiner Meinung nach zu proprietär. Wenn man schnell was Kleines zusammenstricken will, ist es jedoch ganz nett, auch sehr einfach zu lernen.

JSP

Mein klarer Favorit! Java bietet auf jeden Fall eine umfangreichere API als VB und eignet sich sehr gut für serverseitige Anwendungen. Die Trennung in Präsentations-, Applikations- und Datenlogik nach dem MVC-Konzept läßt sich schön umsetzen, also z. B. JSP in Verbindung mit Java Beans + Datenbank für kleinere Projekte und wenn es eine richtig große Business Anwendung werden soll, JSP mit EJB + Datenbank.

Ich bin jetzt kein CGI-Spezialist, aber dort wird doch für jede jede Abfrage ein neuer Prozeß gestartet, oder? Servlets (JSP werden in Servlets kompiliert) bleiben auf jeden Fall im Arbeitsspeicher des Servers und bei jeder neuen Abfrage wird lediglich ein neuer Thread initialisiert, was Geschwindigkeitsvorteile bringen kann.

Phyton

Leider auch keine Erfahrung mit Phyton.

Grüße, Tanja

Huhu Tanja

JSP

Mein klarer Favorit! Java bietet auf jeden Fall eine
umfangreichere API als VB und eignet sich sehr gut für
serverseitige Anwendungen. Die Trennung in Präsentations-,
Applikations- und Datenlogik nach dem MVC-Konzept läßt sich
schön umsetzen, also z. B. JSP in Verbindung mit Java Beans +
Datenbank für kleinere Projekte und wenn es eine richtig große
Business Anwendung werden soll, JSP mit EJB + Datenbank.

Ich bin jetzt kein CGI-Spezialist, aber dort wird doch für
jede jede Abfrage ein neuer Prozeß gestartet, oder? Servlets
(JSP werden in Servlets kompiliert) bleiben auf jeden Fall im
Arbeitsspeicher des Servers und bei jeder neuen Abfrage wird
lediglich ein neuer Thread initialisiert, was
Geschwindigkeitsvorteile bringen kann.

Klingt aufregend.
mhhh… ich habe leider noch nichtmal eine Zeile Code von JSP gesehen. Außerdem weiß ich auch nicht, ob mein Provider das unterstützt :-/
Ist das nicht Java oder sowas? (sorry für die DAU-Frage). Gibts da nen kleines tutorial, das ich mir das mal anschauen kann? Mal so ein Einblick in diese Spreche bekommen eben … :smile:

Gruß
Martin

Hallo Martin!

mhhh… ich habe leider noch nichtmal eine Zeile Code von JSP
gesehen. Ist das nicht Java oder sowas?

Ja, es ist einfach HTML mit Java-Code vermischt, wobei man JSP, wenn man schön programmiert, nur für die Präsentationslogik einsetzen sollte, d. h. man braucht zusätzlich noch ein paar Java Beans oder noch besser EJB, in denen die eigentliche Applikationslogik steckt.

Auf diese Weise ist es auch leicht möglich, daß beispielsweise ein Java-Entwickler die Applikationslogik programmiert und ein Web-Designer einfach nur mit JSP die Daten präsentiert, indem er die Java Beans oder EJB aufruft und die Ergebnisse anzeigt. Wenn man die gesammte Applikationslogik in JSP packt, wird es sehr schnell viel zu unübersichtlich.

Gibts da nen kleines tutorial, das ich mir das mal anschauen
kann? Mal so ein Einblick in diese Spreche bekommen eben … :smile:

Ein sehr schönes Tutorial für den Anfang findest Du unter http://www.heise.de/ix/artikel/2000/07/152/

Grüße, Tanja

Hi,

btw: ich studier jetzt balt Informatik *freu* Mal gespannt, ob
dda noch etwas bei herum kommt *hoff* Perl kenntnisse […]

hm. Auf die Gefahr hin, Dich zu desillusionieren: Informatik ist eine Wissenschaft, also vorwiegend Theorie. Programmierung ist dazu nicht nötig; auch wenn Du an den meisten Unis einige Grundlagen anhand einiger Programmiersprachen beigebracht bekommst - Perl wird das aber höchstwahrscheinlich nicht sein, sondern eher sowas wie Gofer.

Der größte Teil des Informatik-Studiums ist trockenste Mathematik. Wann hast Du das letzte Mal mathematisch bewiesen, daß 0 kleiner ist als jede natürliche Zahl? :smile:

Cheatah

Hi,

Ich bin jetzt kein CGI-Spezialist, aber dort wird doch für
jede jede Abfrage ein neuer Prozeß gestartet, oder?

jein. mod_perl beispielsweise existiert, wenn man Perl einsetzen möchte.

Phyton

Leider auch keine Erfahrung mit Phyton.

Ich auch nicht - aber etwas mit Python :wink:

Cheatah

hm. Auf die Gefahr hin, Dich zu desillusionieren

nana :smile: Ich kenne Jemand, der an einer uni bereits Informatik studiert und hab von daher schon ein wenig mitbekommen, was so den Stoff betrifft. Außerdem studuiere ich (werde studieren) an einer FH, was den Theoriefaktor etwas vermindert und den Praxisfaktor etwas steigert :wink:

Perl wird das aber höchstwahrscheinlich nicht sein,
sondern eher sowas wie Gofer.

oder sowas wie Java :smile: Macht z.B. der Freund von mir, wie o.g.
Es geht mir nicht unbedingt um die Programmiersprache selbst, als viel mehr um fundamentale Programmierkenntnisse, wie z.B. das Objektorientierte Programmieren. Perl ist nur die Sprache, mit der ich dann versuche „zu sprechen“.

Der größte Teil des Informatik-Studiums ist trockenste
Mathematik. Wann hast Du das letzte Mal mathematisch bewiesen,
daß 0 kleiner ist als jede natürliche Zahl? :smile:

bewiesen? Noch gar nicht :smile: Meine reele Schulzeit endete mit Abschluss der Fachoberschule in 1997. Dann kam ab 1998 meine Ausbildung zum IT-Systemelektroniker, die allerdings != Mathematik war :wink:
Naja, ich muß halt eben doch wieder meinen Rechenschieber vom Dachboden holen :wink:

Grüzli,
Martin

Hi,

hm. Auf die Gefahr hin, Dich zu desillusionieren

nana :smile: Ich kenne Jemand, der […]

dann ist gut. Ich wollte nur warnen, weil sehr viele „Computer-Freaks“ glauben, für ein Informatikstudium geeignet zu sein, weil sie sich ja ach so gut mit dem Rechner auskennen… und solche Leute sind dann verantwortlich für die hohe Absprungquote.

Es geht mir nicht unbedingt um die Programmiersprache selbst,
als viel mehr um fundamentale Programmierkenntnisse, […]

Ah, dann habe ich Dich mißverstanden. Streiche bitte sämtliche Einwände von mir :smile:

Wann hast Du das letzte Mal mathematisch bewiesen,
daß 0 kleiner ist als jede natürliche Zahl? :smile:

bewiesen? Noch gar nicht :smile:

Das (oder ähnliches) würde Dir aber zumindest an der Uni blühen… :smile: (Von der FH weiß ich es nicht.)

Naja, ich muß halt eben doch wieder meinen Rechenschieber vom
Dachboden holen :wink:

Nope! Vor allem wirst Du viiieeel Bleistift brauchen. Mathematik hat nämlich mit Rechnen so wenig zu tun, wie Informatik mit Computern :wink:

Cheatah

Mein persönlicher Favorite ist momentan PHP. Python kenne ich gar nicht, unter JSP kann ich mir noch was vorstellen, hab’s aber noch nicht ausprobiert.

PHP:
relativ schnell, auf vielen Providern vorinstalliert, einfache DB-Anbindung, unzählige Funktionen, die das Erstellen von dynamischen Webseiten vereinfachen, läuft auf vielen Systemen, meiner Meinung nach leichter zu lernen als Perl, weil es nicht die vielen Spezialanweisungen, Implikationen etc. hat. Zusätzlich zu den Regular Expressions (RE) noch Stringfunktionien für einfache Operationen, die schneller sind als die eher aufwendigen REs. Open Source.

Perl ist zwar mit mod_perl auch sehr schnell, aber mod_perl ist halt auf den meisten (billigeren) Webhostern nicht installiert. Ausserdem ist die Verbindung zwischen HTML und Perl-Code nicht so schön gelöst. Allerdings gibt es auch in HTML eingebettetes Perl, soweit ich weiß.

ASP:
Grundsätzlich ist ASP das gleiche wie PHP nur in JScript oder VBScript, allerdings mit weit weniger Funktionen. Man ist daher oft auf COM-Componenten angewiesen (DLLs). Läuft vernünftigerweise auf dem IIS. Ein Problem ist bei den DLLs mit den Componenten, dass die bei jeder Änderungen immer bei gestoppten IIS neu registriert werden müssen. Vermutlich gibt’s da mittlerweilen besser Lösungen. Wir hatten aber oft Probleme mit DLLs.

Schätzungsweise ist JSP ähnlich wie ASP und PHP nur mit Java-Syntax.

Zum Thema Logik von der Präsentation trennen:
Als wir mit unserem ersten ASP-Projekt gestartet haben, wollte wir auch großartig VB-Componenten erstellen, die die Programm-logik enthalten. Im Laufe der Zeit habe ich allerdings festgestellt, dass die meiste Logik eigentlich durch die Verlinkung der Seiten entsteht. Die Webseiten schauen fast immer gleich aus (vereinfacht):

Session-Management
Daten aus DB lesen
Daten aufbereiten und präsentieren (ev. in Formular)

oder

Session-Management
Daten vom Formular lesen
Daten verifizieren
Daten in DB schreiben

Das Session-Management und DB-Grundfunktionen (öffnen) werden in eigene Funktionen/Dateien ausgelagert. Lesen und Schreiben aus der/in die DB geht einfach mit SQL; Perl, PHP und ASP und vermutlich auch JSP bieten dazu einfache Funktionen an. Das Daten Aufbereiten und Verifizieren war bei uns auch meist so einfach, dass sich externe Komponenten/Module selten ausgezahlt haben.

Und beim Debuggen/Warten hat es sich auch als einfacher erwiesen, z.B keine DLLs zu verwenden, sondern nur ASP, oder nur PHP. Eventuell in Form von Funktionen in includierten Dateien.

Kann aber sein, dass das Erzeugen von externen Komponenten/Module in Java mit JSP einfacher und weniger Zeitintensiv geht.

In PHP braucht man externe Komponenten vermutlich nur mehr, wenn man entweder dem Kunden den Source-Code nicht zeigen will, falls das System beim Kunden läuft, oder wenn die Geschwindigkeit extrem wichtig ist. Bei ASP braucht man sie öfters, weil ASP weniger Funktionen direkt unterstützt (z.B. Datei-Upload)

PS: Bin noch nicht wirklich Experte, da ich in noch keinem der obigen Sprachen wirklich lange entwickelt habe. Aber das waren so meine Eindrücke.

Grüße
Hannes

wow, danke :smile:
Das ist ja ein Monsteratrikel :smile: Danke für den Eindruck, der Du mir vermitteln konntest…

Hat mir auch sehr geholfen!

Gruß
Martin