簡単なモジュールを使う

モジュールとは、Perlに機能を追加する拡張機能のこと。モジュールを使うには、プログラムの先頭で、useディレクティブによってそれを宣言する。

use File::Basename;

これでFile::Basenameモジュールが持つ関数を使えるようになる。

my $path = "/usr/bin/perl";
my $dirname = dirname $path; # パス名からディレクトリ名を取り出す


モジュールが提供する関数の中に、自分のサブルーチンと同じ名前のものがあると困る。インポートリストを使うと、必要な関数だけをインポートすることができる。

use File::Basename qw/dirname/;


インポートしていない関数を使いたい場合は、完全修飾子名で関数を呼び出す。

my $dirname = File::Basename::basename $path;


モジュールの中には、オブジェクト指向モジュールというものがある。オブジェクト指向モジュールでは関数のことをメソッドという。そして、オブジェクト指向モジュールはメソッドをインポートしないので、常に完全修飾子名で呼び出す。

use File::Spec;
my $path = File::Spec->catfile($dirname, $basename);

オブジェクト指向モジュールでは、完全修飾氏名に::ではなく->を使う。