[Perl vs. Python] Welche Sprache ist "besser"

-=Renegade=-

Lt. Junior Grade
Registriert
Nov. 2006
Beiträge
434
Hoi!


Ich bin derzeit am überlegen, welche Sprache ich als nächstes erlernen sollte und bin da über die beiden oben genannten, Perl und Python gestolpert.

Ich beherrsche im Webbereich neben den kleinen Dingen wie HTML, CSS und JavaScript auch schon PHP (auch in Verbindung mit Datenbanken)

Nun möchte ich eben meinen Wissenshorizont in dem Bereich erweitern. Wichtig ist dabei nicht die leichte Erlernbarkeit der Sprache, ich denke, dass sollte bei beiden kein Problem sein, sondern Verbreitung (was wird häufiger verwendet, wo ist die Nachfrage größer) und Sicherheit (PHP ist ja nicht gerade als Sicherheitswunder bekannt)


Oder gibt es dann überhaupt ne andere Sprache, die ich lernen sollte?


Vielen Dank im Voraus


so long
Renegade
 
geschmackssache.. python hab ich selbst noch nie programmiert. soll aber sehr intuitiv sein.. perl is kurz gesagt ziemlich ungemütlich was den syntax angeht. besonders leicht erlernbar würd ich es jedenfalls nicht nennen.
 
Perl vs. Python ist so eine der Standard-Religionsfragen was Skriptsprachen angeht.

Eigentlich ist der einzig sinnvolle Rat, den ich geben kann, dir beides mal anzusehen
und das zu nehmen, das dir am besten gefällt.
 
Und von den oben genannten Aspekten, Verbreitung und Sicherheit, gibt es keine Sprache, die für sich spricht? Können sich da auch beide das Wasser reichen?
 
Die sind beide weit verbreitet und Sicherheit ist meiner Meinung nach eh Sache des Entwicklers.
 
Was meinst du mit Sicherheit? Mist kannst du immer bauen und auf die klassischen C/C++-Fehler wirst du weder in Perl noch in Python stoßen.
 
So viel ich weis ist in Python das Konzept der Objektorientiertheit deutlich besser realisiet worden.
Sonst nehmen sie sich wohl nicht so viel.

Wobei ich auch gehört habe, dass wenn man sich erst einmal in Python eingearbeitet hat, man sehr ungerne wieder dsvon weg will.

Ein andere Frage: Warum nicht Ruby und erst Recht in Kombination mit dem Framework Rails?
 
Ich kann mich täuschen, weil ich da nicht so viel von weiß, aber ich glaube,
Rails ist ein Webframework. Vielleicht will er ja mit der Skriptsprache gar
keinen Webkram machen?

Wie auch immer, es wird seinen Grund gehabt haben, dass er gerade nach
diesen beiden Sprachen gefragt hat.
 
@asdfman
Jap da hast du recht, nur warum eine Anwendung in einer Scriptsprache schreiben, wenn es Hochsprachen besser können?!

Vielleicht irre ich mich ja, aber sind Perl und Python nicht langsamer als z.B. C++ oder selbst Java?

Zudem dürften beide schlechtere Debuggingfunktionalität liefern?
 
@ Helios co.

Dir ist ja schon klar, dass Ruby ebenfalls eine Skriptsprache ist - ähnlich wie PHP, JS, Perl und Python.
Und ja, kompilierte Sprachen sind in der Regel wesentlich schneller als interpretierte Sprachen.
 
Helios co. schrieb:
@asdfman
Jap da hast du recht, nur warum eine Anwendung in einer Scriptsprache schreiben, wenn es Hochsprachen besser können?!
Es gibt soweit ich weiß keine Scriptsprache, die keine Hochsprache ist. Den Begriff Scriptsprache sollte man auch nur benutzen, wenn man eine Sprache wirklich auch als Scriptsprache benutzt. Wenn man eine Rails-Anwendung schreibt, ist ruby keine Scriptsprache.

Vielleicht irre ich mich ja, aber sind Perl und Python nicht langsamer als z.B. C++ oder selbst Java?
Ja, weil sie viel dynamischer als C++ oder Java sind.

Zudem dürften beide schlechtere Debuggingfunktionalität liefern?
Nein, warum sollten sie auch?
 
Zunächst, thx @ all: ich habe wieder was gelern.

Was die Debbuging Funktion anbetrifft. Ich kenne die von Ruby, und erachte sie im Vergleich zu dem was in Java vorhanden ist, als schlechten Witz; Wenn nicht noch schlechter :)

Ein andere Frage: Was genau ist dann eine Hochsprache?
Was macht also eine Sprache zu einer Hochsprache?
 
Ein wenig ausführlicher: Hochsprachen sind all jene Sprachen, welche für den Entwickler recht verständlich sind, da sie viele englische Schlüsselwörter besitzen und somit an die normale englische Sprache angelehnt sind. Solche Sprachen sind jedoch nicht für die Maschine verständlich und müssen für sie erst in irgendeiner Art und Weise übersetzt werden. Alle Sprachen, über die in diesem Forum diskutiert wird, sind somit Hochsprachen. Die einzige Ausnahme, die mir derzeit einfällt, ist Assembler. Assembler ist wesentlich unverständlicher für den Entwickler, da ihr die ganzen schönen englischen Schlüsselbegriffe, Schleifen, Strukturen usw. fehlen. Sie ist dafür für Maschinen verständlich. Hochsprachen sind also sehr "maschinenfern". Ihr Gegenteil sind - überraschenderweise - maschinennahe Sprachen.
 
Die Erläuterung von asdfman empfinde ich als wesentlich präziser und pregnanter. ;)


Perl eignet sich wunderbar, um kleine Skripte zu erstellen und den Alltag angenehmer zu gestalten. Man muss sich bei Perl im Hinterkopf behalten, wie es überhaupt enstanden ist. Es sollte ursprünglich nur eine Sammlung von tools sein, um das Arbeiten im Gegensatz zu reinen Shellskripten (bash) wesentlich einfacher zu gestalten. Dies widerspricht zwar dem Unixprinzip, jedoch hat Perl damals ziemlich großen Gefallen gefunden.
Perl eignet sich aber eher weniger für größere projekte, da es sehr schnell extrem unübersichtlich und nach einer Weile das Arbeiten, wenn man nicht aufpasst, zur Qual wird. Desweiteren hat Perl bereits einige Jahre auf dem Buckel und ist eher etwas für eingesessene Hasen. Einem Anfänger würde ich es nicht mehr empfehlen.
In der Webentwicklung hat es sich im Zuge der Einführung der CGI-Schnittstelle geradezu angeboten, deshalb trifft man in der Literatur auch immer Perl an.

Python hingegen setzt gerade auf gute Lesbarkeit, kennt damit zumindest diese Nachteile nicht und ist extrem flexibel und dynamisch. Außerdem ist Python eine ziemlich praxisorientierte Sprache und hat ein sehr breites Anwendungsspektrum.

Entscheiden musst du selber. Wir können dir nur Erfahrungen und Eindrücke liefern. ;)
 
Erst einmal danke. Vor allem jetzt zum Schluss waren weniger nichtssagende Beiträge dabei, man konnte schon ein wenig die Unterschiede herauslesen.

Ich denke, dass mir eure Antworten im Großen und Ganzen doch sehr geholfen haben, danke hierfür :)


so long
Renegade
 
schau dir mal ruby an imo...

könnte genau das sein was du suchst und es reitet grad auf so einer hype welle ^^
also wenn du IN sein willst lern ruby :P
 
Zurück
Oben