Learning Perl を実際に見たことがない 第 6 版ですが、Perl 5.12 で作業するのが難しい場合は非常に驚かれることでしょう。 Perl 5.14 は、ほとんどの人がそれを必要とするコードを書くにはまだ新しすぎます。この本では、5.12 では利用できないいくつかの機能について言及している場合がありますが、5.12 の機能のみを使用して物事を達成する方法を説明する必要があります。
バージョン番号は気にせず、最新の Strawberry Perl を使用することをお勧めします。
更新: マイクが指摘したように、序文の最初の段落は次のとおりです。
<ブロック引用>Learning Perl の第 6 版へようこそ 、Perl 5.14 とその最新機能用に更新されました。この本は、まだ Perl 5.8 を使用している場合でも有効です (ただし、リリースされてからかなり時間が経っています。アップグレードについて考えたことはありますか?)。
これで、第 6 版で 5.12 を問題なく使用できることが確認されました。
私は少し前に Windows と PHP から Linux と Perl に移行しましたが、振り返ることはありませんでしたが、ここで OS やプログラミング言語の戦争を始めたくはありません。私のデスクトップは Ubuntu を実行していますが、Windows を使い続けることもできます (必要なときに VirtualBox VM で Windows を利用できます)。
Ubuntu Server ISO をダウンロードし、Virtual Media Manager を介して CD/DVD イメージとして添付できます。その後、必要な数の Ubuntu VM をセットアップできます。私は非常に基本的な設定を使用しています:
- RAM:512MB
- ハードディスク:8GB ダイナミック
- ネットワーク アダプタ:ブリッジ
いくつかのイメージを構成しています。 1 つは Nginx + Catalyst でセットアップされ、もう 1 つは Bricolage CMS と Apache でセットアップされ、他のいくつかのバリエーション (PHP を含む) でセットアップされます。 VM の優れた点は、スナップショットを作成し、イメージを複製し、実験し、失敗した場合は吹き飛ばして再起動できることです。
開発環境をどのようにセットアップするかは、個人の選択次第です。 SSHMenu を使用して、開発サーバーへの 4 つの SSH 接続を開きます。これにより、端末も画面上の事前定義された位置に配置されます。
コードの実行、デバッガーへのアクセスなどに 1 つの端末を使用します。DBMS クライアント (PostgreSQL / MySQL) に接続するために別の端末を使用します。残りの 2 つは、コードの編集と単体テストに使用します。ターミナルで Vim をエディターとして使用しています。私も Emacs を試してみようと思っていましたが、まだ慣れていません.
バージョン管理システムとして git を使用し、ベア リポジトリを別のファイル サーバーに配置しています。私は Mercurial から始めましたが、Perl の世界の多くは git を使用しているように見えたので、切り替えました。
美しい Solarized 配色を使用するように GNOME ターミナルを構成しました (そのための便利なスクリプトがここにあります)。
Perl のバージョンについては、わかりません。独自のパッケージを構築しようとするのではなく、標準パッケージを使用することについての他のコメントに同意します - 特にあなたが Linux 初心者の場合。 O'Reilly のプレビュー ページを見たところ、序文に「Perl 5.8 をまだ使用している場合でも、この本は優れています」と書かれているので、以前のバージョンでも問題ないはずです。また、Perl で Web 開発を行うことを計画している場合、選択したホスティング プロバイダーによって古いバージョンの Perl に制限される可能性があることにも注意する必要があります。
その他の考え:
-
Perl のプログラミングは、古くはありますが、今でも優れたリソースです。 Perl の学習を完了し、おそらく中級 Perl を完了した人は、読む価値があります。パターン マッチング (正規表現) のセクションは素晴らしいです。
-
Modern Perl は非常に読みやすいです。よく書かれており、簡潔で、本当に役立つヒントが満載です。
-
cpanm は、標準の CPAN アプリケーションの優れた代替手段です。
-
local::lib は非常に便利です。これを使用して、CPAN モジュールのアプリケーションごとのセットを作成します。これは、同じモジュールの異なるバージョンを使用している可能性のある他のアプリケーションとの競合を心配することなく、ディレクトリ構造全体を開発サーバーからアプリケーション サーバーに簡単にコピーできることを意味します。 これはおそらく現時点では関係ありませんが、より多くのことを学び、多くの CPAN モジュールを使い始めると、非常に便利になります.
簡単な local::lib
例:
mkdir -p ~/myapp/extlib
cpanm --prompt -L ~/myapp/extlib CPAN::Module1 CPAN::Module2 ...
eval $(perl -Mlocal::lib=~/myapp/extlib/)
~/myapp/scripts/myscript.pl
で :
use FindBin;
use local::lib "$FindBin::Bin/../extlib";
ActivePerl を使用
これは非常に優れた製品であり、無料であり、(ほとんどの場合) 信頼できる PPM (Perl Package Manager) を備えています。普段使っていて特に問題ありません。これは Strawberry Perl と同じバイナリ ディストリビューションですが、CPAN.pm の代わりに PPM を使用してモジュールを取得します。
注:Perl 5.14 を手に入れようとしているのなら、この本のためだけに、そうしないでください。私はその本を手に入れ (私も初心者です)、5.12.4 を使用しました。ほとんどすべての機能を利用できます (一部を除く;-)