Perlの勘所1 開発環境と用語

PHPで十分だと思うのにPerlに入門してしまった。時代に逆行した選択だけど、調べてみるとなかなか面白い言語だった。

Perlの環境的な知識

Perlはサーバサイドで活躍するオブジェクト指向言語。文字列の処理に特化している。
以下、Perl用語についてのまとめ。

mod_perl

インタプリタによるコンパイル時間を短縮してくれるApacheのモジュール。これをApacheに入れるとPerlの実行速度が10倍に跳ね上がる。通常時のPerlはかなり遅いと聞くので、おそらく現在はこれの導入が前提になっている。

Active_perl

Windows用Perl実行環境インストーラ。

Cygwin

Window環境でUNIX環境の一部を再現できる開発ツール群。「GNUプロジェクト」と呼ばれる、UNIX互換のソフトウェア環境を全てフリーソフトとして実装することを目的とした、プロジェクトの過程において作られたツールセットである。

EPIC

Eclipse Perl Integrationという名前のEclipse用プラグイン。これをEclipseに導入すると、EclipseでPerlが扱えるようになる。

CPAN

CPAN(シーパン、Comprehensive Perl Archive Network)とはPerlのライブラリ・モジュールやその他のPerlで書かれたソフトウェアを集めた巨大なアーカイブで、世界中のサーバにその内容がミラーリングされている。

以下より、コードを書き始める上で重要なことを説明する。

useとrequireについて

use文やrequire文を使用すると、ファイルを読み込んで実行することができる。両者の特徴は次のようになっている。

requireuse
実行タイミングrequire実行時スクリプト起動時
Exporterによる自動インポート不可能可能
 

構文チェックを厳しくしてバグを減らす

以下のコードをPerlソースコード内に書くと構文を厳密にチェックすることができる。バグを減らすことにも繋がるので是非書いておきたい。

use strict;
use warnings;

useはここではモジュールをインポートする目的で使用する。useはPerlの予約語に該当する命令文の一つである。use strict;はstrictというモジュールを使用することを宣言している。useはJavaでいう、importや、Cでいうincludeにあたる宣言である。use strict;と書くとmy, our, localといった変数のスコープ宣言が必須になる。

use warnings;と書くと、コンパイルエラーにはならないが、望ましい構文で書くことを警告する。警告されたら修正を行うようにした方が良い。

以上のstrictやwarningsはプラグマと呼ばれ、Perlスクリプトをコンパイルするときに影響を与えるコンパイルオプションのようなものとなる。バグを減らすためにもコードの冒頭に必ず書くようにしたい。

明示的にperlのバージョンを指定する

Perlで書かれた既存のアプリケーションに機能を追加する時などは、明示的にperlのバージョンを指定しないと、何らかの理由でコードが動かないことがある。バージョンの指定は以下のように行う。

require 5.005;

参考
Perlモジュール徹底解説 – サンプルコードによるPerl入門