Moose::Roleが興味深い

「モダンPerl入門」相変わらずゆっくりと読んでます。 別名というか、英語表記で「PRAGMATIC Perl」と書いてあります。 Pragmaticというのは「実際的な」とか「実用的な」「実利的な」といった意味のようです。 で、ようやく第一章を読み終わりました。 近代的なオブジェクト指向ということで、主にMooseの紹介でした。 その中で、Moose::Roleが出てきましたが、この考え方が面白いです。 面白いというか、すっと腑に落ちたという感じです。 基本的考え方として、役割を定義するクラスを作って、それを継承することで別のクラスに意味づけをする、という風に理解しています。 Moose::Roleでは継承の仕組みが拡張されていて、指定したメソッドを必ず備えるように縛ることができます。 MovableTypeでも、最近はカテゴリーとタグがありますが、従来の継承はカテゴリー、Moose::Roleで拡張される「役割」はタグ、というイメージでしょうか。 CPAN:Moose::Role - The Moose Role で、例としてキャッシュのアダプターが紹介されていましたが、CPANに同等の機能を持つMooseX::Role::WithCacheというモジュールがある、ということでしたが、名前が違っていました。 正しくはMooseX::WithCacheでした。 いきなりcpanコマンドでインストールしようとしたら、存在しないというエラーが返ってきてビックリしました。 CPAN:Daisuke Maki / MooseX-WithCache - search.cpan.org ただ、問題なのは、この辺を勉強してもレンタルサーバーでは使えない、ということなんですね…。

Comments

comments powered by Disqus