概要: を紹介してみるテスツ
えっと、最近、
という雑記にも書いた通り、
が復活してきて、モリモリと Perl のコードを書いているので、今日は、
- 最近僕が気に入って使ってる Perl(CPAN) モジュール
を、ざっくり紹介して行きたいな、と思います。
[Moo http://search.cpan.org/perldoc?Moo ]
基本的に Perl のおけるモダン OOP は、
を発端とした、Moose 系のファミリーを使うのがベターだと思いますが、僕はその中でも、
を使ってます。
まあ、以前は、
使ってたんですが、Moo
は Mouse
よりシンプルで、かつ、 Mouse
より Moose
互換性を割り切っているので、その辺り気に入って使ってます。
あとはまあ、型システム用に、
を使ってるって感じですね。
[Time::Moment http://search.cpan.org/perldoc?Time%3A%3AMoment ]
日付を扱う系のモジュールには、
を使うのがデファクトだと思うんですが、まあ正直 DateTime
は複雑で、かつ、ちょっとだけ使う分にはヘヴィーなので、僕は Time::Moment
使ってます。
まあでも、結局のところは単なる新しいもの好きな趣味ですね。はい。
[Mojolicious http://search.cpan.org/perldoc?Mojolicious ]
僕は基本的に、複雑な framework に対しては、
アイエエエ! フクザツ! フクザツナンデ!
って成るので、基本的には軽量というか、シンプルな構造の framework しか扱えないという困ったちゃんなのですが、Perl において Web Application を書くときには、
を使ってます。まあ正確には Mojolicious::Lite
の方ですけど。
で、あと、 Mojolicious::Lite
とか使うまでもない簡単な Web Applicaiton に関しては、
を使って、生の PSGI Application を書いてたりします。基本非推奨ですけれども。
あと、Mojolicous
以前は、
を使ってたと思うんですが、なんか色々と機能が充実してなくて、めんどくさくなって投げたような覚えが有ります。
でもまあ今はもうちょっと進化してるっぽいので、あの当時と比べると、まだ面倒なところは少なくなってるのかな? とは思います。
[DBIx::Mint http://search.cpan.org/perldoc?DBIx%3A%3AMint ]
で、先に、僕は、
を使ってると言いましたが、これと関連して、O/R Mapper には、 Moo
ベースでクラスが書ける、
を使ってます。っていうかまあ、正確には、 使おうとしている 、っていうのが正しいですが。
で、この DBIx::Mint
は結構構造がシンプルで、かつ Moo
ベースの Object を突っ込んだりするだけで、データベース操作が出来ちゃうし、あと、この Moo
ベースのオブジェクトを突っ込んで データベースにデータを保存したりっていうのが、 Golang の ORM の操作感に近いので、その辺りも気に入ってるポイントの一つです。
[Promises http://search.cpan.org/perldoc?Promises ]
これは主に、僕が雑記の方で言っていた、
という Applicatio のコアの方で使ってます。
で、この Promises
は、いわゆる Promise
を使うデザインパターンを、Perl で実装したモノらしいのですが、いかんせん僕に Promise
脳が無いので、時々えーっとこれがああなって、アレが、こうなって、……あばばばばばばばば! と成るときが未だに有るので、まだ正直使いこなせていません。
が、この Promises
は、その非同期実行システムに、
辺りが使え、かつ、コレ以外の非同期実行環境にも対応できそうな感じではあるので、その辺り結構可能性ありそうだな、って感じです。はい。
あと、語るものもないほど当たり前に使っているモジュール達
- [[Plack http://search.cpan.org/perldoc?Plack]]
- [[cpanm http://search.cpan.org/perldoc?cpanm]]
- [[carton http://search.cpan.org/perldoc?carton]]
- [[Test::More http://search.cpan.org/perldoc?Test%3A%3AMore]]
辺りですかね。
とりあえず以上
ですかね。はい。
まあコレ以外にも使ってるモジュールは多分有るんでしょうが、あんまり思い起こせないし、あと他のモジュールに関して言えば、それはその時々の必要に応じて、色々検索して選んでいるだけだと思ってるので、あえてこれ使ってます! っていうのはこれぐらいですかね。
まあ、とりあえず今日の思いつきで書いた記事は以上です。まあ、なんかの参考になればなーと思います。
という事で以上で本日の記事を終わります。まる。
#FIXME