私は、以下のような人には理屈もへったくれもなく、無条件にMoose(Mouseでも構いません)を使えと言います。PerlのOOに悩みたくない人、いわゆるモダーンPerlが何であるか理解出来ない人(すなわち、Perlのベストプラクティスやピットフォールを知らない人、もっと端的に言えば、Perlに精通していない、赤ちゃん言葉でしか喋れない人です)、Mooseを知らない人(皮肉で反対なことを言っているのではありません。Mooseを食わず嫌いな人です。そういう人は、どうせMooseやClass::MOPのソースも読みはしないのだから、Mooseの何たるかを理解させる時間が無駄です)。 しかし、Perlに精通している人には無理強いしません。いろいろな考えがあるでしょうし、オーバーヘッドが無視し得ない環境もあるのです。また顧客が望まない場合もあります。一般的に顧客というのはすごく保守的です。コードも納
CPANTSは情報の宝庫 Perlを使う最大の利点といわれるCPANですが、CPANは単なるモジュール置き場ではありません。CPANはまたPerlの利用状況を知るうえで不可欠な統計情報を得る場でもあります。そのような統計情報のいくつかは、いわゆるCPAN検索サイトからも確認できますが、より突っ込んだ情報が欲しい場合はCPANTS(CPAN Testing Service)と呼ばれるサイトを確認するのが便利です。 国内ではnipotanこと谷口公一氏が始めた「輝け!全日本最強 CPAN Author 決定選手権」のネタ元として知られていますが、このサイトでは個々の作者やモジュールの品質だけでなく、そのモジュールが実際にどこで使われているかという情報を得ることもできます。 たとえば前回取り上げたロール関連のモジュールの利用状況を調べてみると、古き良きExporterを依存モジュールとして取り上
FAQにもあるけど、Moose::Objectも継承して->meta->new_objectを明示的に呼ぶことにより、delegationを使わないでNon-Mooseクラスを継承することもできる。 use strict; use warnings; { package Parent; sub new { my ($class, %args) = @_; bless {name => $args{name}}, $class; } } { package Child; use Moose; extends qw(Parent Moose::Object); no Moose; sub new { my $class = shift; my $obj = $class->SUPER::new(@_); return $class->meta->new_object( __INSTANCE__
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く