# Perl: モジュールを書き始める ## CPANモジュール逆引きガイド perl モジュールを書く場合、CPAN の作法に乗ったテンプレートを生成してくれるツール群を使うと便利。 * モジュール名を指定するだけで必要なファイル群を生成してくれる * Makefile.PL や Build.PL といったビルドスクリプトも自動生成 * モジュールのテストや author 向けテスト xt/ もついてくる * CPAN 向けに必要なファイル(Changes/MANIFESTなど)も揃えてくれる ### オールインワン モジュールを書いてテストしてdistするところまで全部入りのツール。 * {{cpan: Minilla}} 一番シンプルで Perl5.8 でも動く * {{cpan: Dist::Milla}} Dist::Zilla のプラグインが利用できる。依存の問題でそのままだと Perl5.10以上対応。 * {{cpan: Dist::Zilla}} プラグインが豊富。依存がめっちゃ多い。 例えば Minilla なら以下のようなステップでモジュールが書ける(SYNOPSIS からコピペ)。 `minil` というコマンドとサブコマンドを組み合わせてもろもろの操作をする。 minil new - 新しいモジュールを作成する minil test - test を走らせる minil dist - tar を生成する minil install - 手元にインストールする minil release - CPAN にリリースする ### テンプレートジェネレーター モジュールのひな型生成までをやってくれる。make や build は自分で叩く。 * {{cpan: Module::Setup}} * {{cpan: Module::Starter::PBP}} 自分の場合、お仕事では Minilla を使っていて、CPAN 向けに書くときは Module::Setup を使っている。