My Favorite Perl Modules
ゲストさん、ようこそ アカウント登録 | ログイン
jigoroの登録モジュール一覧

登録モジュール一覧

ハッシュをロックする。

ハッシュのキーはstrictが効かないので、タイプミスを発見しにくい。
予めロックしておけば、そういうミスを防止することができる。

ハッシュによるオブジェクトを扱うときには必須。
登録:2006-03-08 15:03:11
バージョンアップ:2010-09-07 13:00:55
warnings(perl)
警告モードにするのは当然としても、警告をより細かに制御をしたいときにはこのプラグマを使う。

use warnings 'FATAL';


これで警告が致命的エラーになる。

use warnings 'FATAL' =%&;gt; 'uninitialized';


これはぬるぽを致命的エラーにしたいとき。

no warnings 'uninitialized';


逆に、ぬるぽでも警告を出したくないときはこれ。
登録:2006-03-08 14:49:42
バージョンアップ:2010-09-07 13:00:55
Benchmark(perl)
コードのベンチマークをとる。

use Benchmark qw(:hireswallclock);


これで、Time::HiResがあれば、wallclockにTime::HiRes::time()を使うようになる。
登録:2006-03-08 14:59:48
バージョンアップ:2010-09-07 13:00:50
strict(perl)
反射的に use strict; use warnings; から書き始める。

未だにRubyではなくPerlメインなのはCPANとこの機能のおかげ。
登録:2006-03-08 15:17:20
バージョンアップ:2010-09-07 13:00:38
Devel::Cover(Devel-Cover)
デバッグ&最適化の強力な味方。開発には欠かせない。
登録:2006-03-07 18:42:13
バージョンアップ:2010-08-30 13:00:42
Test::More(Test-Simple)
テストコードは独自に書くのではなく、こういうモジュールを使った方が後々デバッグしやすい。
登録:2006-03-08 14:56:07
バージョンアップ:2010-08-11 19:01:10
DBI(DBI)
すごく便利。でもちょっとゴタゴタしすぎな気もする。
登録:2006-03-07 18:33:33
バージョンアップ:2010-07-26 07:01:27
Scalar::Util(Scalar-List-Utils)
このモジュールの関数は、いずれも標準で用意されていないのが不思議なくらい重要です。

blessed - オブジェクトか否かの判別
refaddr - プログラム内でユニークなリファレンスのアドレス
reftype - リファレンスが指すモノの型
weaken - ウィークリファレンスの生成

等など。他にも多数。
登録:2006-03-07 18:56:55
バージョンアップ:2010-03-12 01:01:03
DBD::SQLite(DBD-SQLite)
ファイル一つというのは簡潔で扱いやすい。サーバーも不用。
登録:2006-03-07 18:37:01
バージョンアップ:2010-01-09 01:01:40
Encode(Encode)
何より標準モジュールなのが嬉しい。

しかし汎用的過ぎて逆に戸惑うことも。
たとえば、CP932とShift_JISの差がややこしい。
(普通はShift_JISのところでCP932を指定した方がいい)
登録:2006-03-08 14:53:02
バージョンアップ:2009-11-27 01:01:12
Net::FTP(libnet)
FTPの自動化にはこれ。

ただし、mdtm()の値はtimegm()から生成するので、
単純にローカルファイルのstat::mtime()と比較できないことがある。
その変は適当に調整。
登録:2006-03-08 15:25:10
バージョンアップ:2007-08-27 07:00:17
Devel::Profile(Devel-Profile)
perl -d:Profile script.pl


PurePerlのプロファイラ。DProfより扱いやすい。
登録:2006-03-07 18:38:53
バージョンアップ:2007-03-09 01:00:13
Devel::Peek(Devel-Peek)
変数の詳細を覗き見する。
デバッグ用。特に、XSモジュールを作成するときは必須。
登録:2006-03-08 14:54:28
tags
©blogdb 2004-2005