8 Stimmen

Lernen von Perl, aber wie bekomme ich 5.14 auf Windows?

Also habe ich das Buch "Learning Perl 6th edition" bestellt und ich weiß, dass es 5.14 verwendet, aber Strawberry Perl ist nur bei 5.12, also was sind meine Optionen? Ist 5.12 gut dafür geeignet oder wird es Probleme mit dem geben, was gelehrt wird?

Ist meine einzige Option die Verwendung von Linux? Wenn ja, wären Distro-Vorschläge hilfreich, zusammen mit Anweisungen oder einem Link zu Anweisungen zur Aktualisierung von Perl in der genannten Distro (oder allgemein). Ich bin relativ neu in Linux, habe nur ein paar Mal Ubuntu installiert und bin nie dabei geblieben. Die perfekte Lösung wäre eine Distro, die sich gut für die Installation auf einem anderen PC in meinem Haus eignet, sodass ich mich nur per Remote-Desktop (oder Ähnliches, auch SSH, obwohl GUIs angenehm sind) einloggen kann, da ich einen älteren PC habe, in den ich eine neue Festplatte einbauen und herumspielen möchte. (Pentium 4 mit etwas weniger als einem Gigabyte RAM, also nicht schrecklich)

Hoffentlich wird diese Frage als konstruktiver angesehen als meine letzten beiden und ich freue mich auf Ihre Antworten.

Bearbeitung: Auch würden Ressourcen für einen Linux-Neuling eine große Hilfe sein, wenn möglich und wenn es die beste Option ist.

13voto

cjm Punkte 60581

Ich habe die 6. Auflage von Learning Perl eigentlich nicht gesehen, aber es würde mich sehr überraschen, wenn Sie Schwierigkeiten hätten, es mit Perl 5.12 durchzuarbeiten. Perl 5.14 ist immer noch zu neu für die meisten Menschen, um Code zu schreiben, der dies erfordert. Das Buch könnte einige Funktionen erwähnen, von denen Sie in 5.12 nicht profitieren können, aber es sollte dennoch erklären, wie man Dinge nur mit 5.12-Funktionen erreichen kann.

Ich würde empfehlen, einfach das aktuelle Strawberry Perl zu verwenden und sich keine Gedanken über die Versionsnummer zu machen.

Aktualisierung: Wie Mike darauf hingewiesen hat, hier ist der erste Absatz des Vorworts:

Willkommen zur sechsten Auflage von Learning Perl, aktualisiert für Perl 5.14 und seine neuesten Funktionen. Dieses Buch ist immer noch gut, selbst wenn Sie immer noch Perl 5.8 verwenden (obwohl es schon lange her ist, seit es veröffentlicht wurde; haben Sie darüber nachgedacht, ein Upgrade durchzuführen?).

Das bestätigt also, dass Sie keine Probleme haben werden, 5.12 mit der 6. Auflage zu verwenden.

8voto

Mike Punkte 20677

Ich bin vor einer Weile von Windows und PHP auf Linux und Perl umgestiegen und habe nicht zurückgeschaut - aber ich möchte hier keinen OS- oder Programmiersprachen-Krieg beginnen. Mein Desktop läuft mit Ubuntu, aber du könntest auch bei Windows bleiben (ich habe Windows in einer VirtualBox-VM verfügbar, für die Zeiten, in denen ich es brauche).

Du kannst das Ubuntu Server ISO herunterladen und es als CD/DVD-Image über den Virtuellen Medien-Manager anhängen. Du kannst dann so viele Ubuntu-VMs einrichten, wie du möchtest. Ich verwende sehr einfache Einstellungen für meine:

  • RAM: 512 MB
  • Festplatte: 8 GB dynamisch
  • Netzwerkadapter: Gebridged

Ich habe einige Images konfiguriert. Eines ist mit Nginx + Catalyst eingerichtet, eines mit Bricolage CMS und Apache und einige andere Varianten (einschließlich eines mit PHP). Das Tolle an VMs ist, dass du Snapshots erstellen, Bilder duplizieren, experimentieren und Dinge löschen und neu starten kannst, wenn du etwas durcheinander bringst.

Wie du deine Entwicklungsumgebung einrichtest, liegt bei persönlicher Wahl. Ich verwende SSHMenu um vier SSH-Verbindungen zu meinem Entwicklungsserver zu öffnen - das platziert auch die Terminals an vordefinierten Positionen auf meinem Bildschirm.

Ich verwende ein Terminal zum Ausführen von Code, zum Zugriff auf den Debugger usw. Ein weiteres verwende ich, um den DBMS-Client (PostgreSQL / MySQL) zu verbinden. Die anderen beiden verwende ich zum Bearbeiten von Code und Unit-Tests. In meinem Terminal verwende ich Vim als Editor. Ich wollte auch Emacs ausprobieren, bin aber nie dazu gekommen.

Ich verwende git als mein Versionskontrollsystem, mit Bare-Repositories auf einem separaten Dateiserver. Ich habe mit Mercurial angefangen, aber es scheint, als ob viel von der Perl-Welt git verwendet, also bin ich umgestiegen.

Ich habe das GNOME-Terminal konfiguriert, um das schöne Solarized Farbschema zu verwenden (du findest ein nützliches Skript dafür hier).

Was die Perl-Version betrifft: Ich weiß es nicht. Ich stimme anderen Kommentaren zu, die empfehlen, ein Standardpaket zu nutzen anstatt zu versuchen, dein eigenes zu bauen - besonders wenn du ein Linux-Neuling bist. Ich habe gerade auf der O'Reilly-Vorschauseite nachgesehen, und im Vorwort steht "dieses Buch ist gut, auch wenn du immer noch Perl 5.8 verwendest" - also solltest du mit einer älteren Version in Ordnung sein. Du solltest auch wissen, dass wenn du vorhast, Web-Entwicklung in Perl zu betreiben, du möglicherweise auf ältere Perl-Versionen beschränkt wirst, die von deinem ausgewählten Hosting-Anbieter unterstützt werden.

Weitere Gedanken:

  • Perl programmieren, trotz seines Alters, ist immer noch eine großartige Ressource. Nachdem du Perl lernen und vielleicht auch Perl Intermediate abgeschlossen hast, lohnt es sich zu lesen. Der Abschnitt über Musterabgleich (reguläre Ausdrücke) ist fantastisch.

  • Modernes Perl ist wirklich lesenswert. Es ist gut geschrieben, prägnant und voller wirklich nützlicher Tipps.

  • cpanm ist eine großartige Alternative zur Standard-CPAN-Anwendung.

  • local::lib ist sehr nützlich. Ich verwende es, um einen per-Anwendungssatz von CPAN-Modulen zu erstellen. Das bedeutet, dass ich einfach die gesamte Verzeichnisstruktur von meinem Entwicklungsserver auf den Anwendungsserver kopieren kann, ohne mich um Konflikte mit anderen Anwendungen kümmern zu müssen, die möglicherweise verschiedene Versionen derselben Module nutzen. Dies ist wahrscheinlich im Moment nicht relevant für dich, aber wenn du mehr gelernt hast und viele CPAN-Module verwendest, kann es wirklich praktisch sein.

Ein schnelles local::lib Beispiel:

mkdir -p ~/myapp/extlib
cpanm --prompt -L ~/myapp/extlib CPAN::Module1 CPAN::Module2 ...
eval $(perl -Mlocal::lib=~/myapp/extlib/)

In ~/myapp/scripts/myscript.pl:

use FindBin;
use local::lib "$FindBin::Bin/../extlib";

8voto

Dynamic Punkte 901

Verwenden Sie ActivePerl

Es ist ein sehr gutes Produkt, es ist kostenlos und hat einen zuverlässigen (meistens) PPM (Perl Package Manager). Ich benutze es und habe normalerweise keine Probleme. Es ist eine binäre Distribution, genau wie Strawberry Perl, aber Sie verwenden PPM, um Module anstelle von CPAN.pm zu erhalten.

Hinweis: Wenn Sie Perl 5.14 nur wegen des Buches bekommen, dann lassen Sie es lieber. Ich habe dieses Buch bekommen (ich bin auch Anfänger) und habe 5.12.4 benutzt. Sie bekommen größtenteils alle Funktionen (außer ein paar ;-)

4voto

Noufal Ibrahim Punkte 68934

Sie könnten

  1. Windows installieren und dann Ubuntu in einer VM auf Ihrem Windows-Rechner ausführen. Sie können es starten, sich darauf einloggen und dann damit herumspielen.

  2. Verwenden Sie ActivePerl.

3voto

MichielB Punkte 3981

Verwenden Sie einfach ActivePerl - Sie können 5.14 oder 5.12 herunterladen und es ist genauso gut wie Strawberry, selbst mit der kompletten CPAN-Toolchain, heutzutage. Der einzige limitierende Faktor ist die Lizenz, sie ist absolut kostenlos zu verwenden, aber Sie können sie nicht in einer Ihrer Apps bündeln, ohne eine OEM-Lizenz zu erhalten. Für 99% der Fälle ist dies also eine gute Distribution.

StrawberryPerl ist auch geeignet, aber sie haben in der Regel eine etwas längere Verzögerung zwischen der Veröffentlichung einer Perl-Version und der Verfügbarkeit einer aktualisierten StrawberryPerl-Version.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X