Weitere ähnliche Inhalte Ähnlich wie Chiba pm#1 - ArangoDB for Perl Ähnlich wie Chiba pm#1 - ArangoDB for Perl (20) Chiba pm#1 - ArangoDB for Perl3. About Me
• Hideaki Ohno
• Twitter : @hide_o_55
• Hatena: id:hide_o_55
• github: hideo55
• PAUSE: HIDEAKIO
12. こいつをどう思う?
my $users = $db-
>collection(‘users’);
my $cursor = $users->by_exampe({
active => 1
});
while( my $doc = $cursor->next ){
# do something
}
23. 他の言語ではどうしてるか
• Ruby
• [] 演算子をオーバーロード
• database[ my_collection ]
• Python
• __getter__を利用
• PHP/Node.jsは・・・ (自主規制)
26. 参考
• モダンPerlの世界へようこそ:第23回
Module::Build:MakeMakerの後継者を目指
して
• http://gihyo.jp/dev/serial/01/modern-
perl/0023
• Module::Build で let's `make love`
• http://perl-users.jp/articles/advent-
27. PP
• 極力PurePerlでも動くように、XSが使えない場
合はPP版をロードするモジュールを採用
• HTTP::Parser::XS
• H::P::XS::PP
• Data::Util
• Data::Util::PurePerl
• PPでもOK、XSが使えれば更に高速に
28. 使いやすさ重視
• Ruby版だと
• db[ collection ].add_index( hash ,{ on => [ id ] })
• Perl版
• $db->( collection )->ensure_hash_index([ id ]);
• インデックスの種別は定まったものなのでそれぞれ別メソッドに
• 必須パラメータはオプションのハッシュに入れず独立した引数に
Hinweis der Redaktion \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n