タグ

ブックマーク / ziguzagu.org (9)

  • YAPC::Asia 2010

    YAPC::Asia 2010、今年も無事開催され、無事参加してきた。 トークセッションはこのへんを聴いた。 That Goes Without Saying (or Does It?) CloudForecastの紹介 モダンな Perl5 開発環境について DataPortability and SocialWeb Protocols Studying HTTP with Perl How Xslate Works O2 Web Framework Perl5 is Alive! let’s database testing! Perl6正規表現プログラミング楽土入門 省サーバ運用 LT(2日目) Keynote 合間に講堂前デッキのベンチでコードかいたり、アリンコや赤いダニみたいな虫と格闘したりした(きづくと Mac Book のディスプレイの縁をあるいている)。 しかしやっぱりあれ

    YAPC::Asia 2010
  • YAPC::Asia 2009 特別研修 - Moose 入門

    先週末の YAPC::Asia 2009 のカンファレンスに引き続き、特別研修『Moose入門、モダーンなオブジェクト指向システム』に参加してきた。 研修の内容は、Moose とはなんぞやから始まり、以下(だいたい)7 部構成の入門講座。 Moose Concepts : コンセプト ざっと機能一通りみてみる なぜ Moose なのか Classes : Class の基礎から使い方 Moose::Object が何持ってるかとか BUIDLARGS, extends, override, super の使い方 Moose 使ったあとの後始末 (no Moose;) Role : Role の基礎から使いかた Role の持つ意味 使い方 alias で衝突回避 Basic Attributes : Attribute いろいろ required, default/builder, laz

    acotie
    acotie 2009/09/16
    本気で参加したっかったけど、できなかった私涙目。。
  • はじめてのTest::More

    Chapter1の後半戦は、Test::More。 Perl Testing: A Developer's Notebook (Developers Notebook) Test::MoreはTest::Simpleのスーパーセットで完全に置き換えて使ってOK、モジュールをただしく読み込めたかどうかなどのテスト関数も含めいろんな機能あるでよ、とのことです。 早速。 package AnalyzeSentence; use strict; use warnings; use base qw/Exporter/; our $WORD_SEPARATOR = qr/\s+/; our @EXPORT_OK = qw($WORD_SEPARATOR count_words words); sub words { my $sentence = shift; return split $WORD_SE

  • Hatena::API::Auth やってみる

    このあいだやった Flickr::API 認証の Hatena::API::Auth 版をやってみた。またしてもだらだらコード張り付けの刑。 logout と verify は結局 Flickrと同じなので、ルートクラスに移動。 package MyAuth; use strict; use warnings; use base qw(CGI::Application); use CGI::Application::Plugin::TT; use CGI::Application::Plugin::Stash; use CGI::Application::Plugin::Session; use CGI::Application::Plugin::DebugScreen; sub cgiapp_init { my ($self) = @_; $self->tt_config( TEMPLA

  • CGI::Application::Dispatchまとめ : おまえのログ

    ここ1ヶ月ほど(ながいなぁ…)、ちまちまと勉強してきたCGI::Application::Dispatchについて、使い方もこなれて来たので、ここいらでひとまとめです。 何するモジュール? この勉強中エントリーの1回目でも書きましたが、CGI::Applicationを利用したアプリで必要になるインスタンスCGIは作らずに、URI(PATH_INFO)から実行するモジュールとRunモードを決定する、というモジュールです。newしてrunするだけのインスタンスCGIなんか毎回書きたくないよ、というのがモジュール作者さんの意図のようです(PODにもあります)。 URIはこうなる CGI::Application::Dispatchを使った場合のURIは、 となります。 CGI::Applicationを継承したMyApp::Indexというモジュールを作った場合、それを実行するためのURIを比

  • もっと便利なok()

    PerlTestingのChapter1最終戦です。 ok()って基中の基ですがやっぱり不便です。いろんなテストがあるのに条件を1個に縮めないといけないんですもの。でも、Test::Moreにはok()の代わりに使えるイケてる関数がいくつかあります。 まずはテストコード。 #!/usr/bin/perl use strict; use warnings; use Test::More tests => 4; use_ok('Greeter') or exit; my $greeter = Greeter->new(name => 'Emily', age => 21); isa_ok($greeter, 'Greeter'); is($greeter->age(), 21, 'age() should return age for object'); like($greeter->gr

  • 複雑な構造のデータをテストする

    まだ、『PerlTesting』はChapter 2。 今までやってきたテストは、単純なスカラー値のテストと関数のテストのみですが、もっと複雑なデータをテストしたい場合があります。 Test::More::is_deeply :is_deeply:リファレンスを追いかけて複雑な構造のデータを比較して同じかどうかテストする たとえば、リスト>ハッシュ>スカラー、リストのテスト。 #!/usr/bin/perl use strict; use warnings; use Test::More tests => 1; my $list1 = [ { name => 'Tom' family => [qw/father mother dog/], }, { name => 'Bob', family => [qw/father mother sister cat/], } ]; my $list2

  • Flickr::API と Cookie を

    だいたい掴んだ。 意味もよくわからず、CGI::Session に secure オプションをつけて、「おかしいなー、クッキー取れないなぁ」とかって半日悩んだ。3連休最後、いろんな意味ですばらしい締めくくり。 Cookie仕様 日語訳 - http://www.futomi.com/lecture/cookie/specification.html 今の会社に転職するまで、CookieJavaScript もないモバイルな環境の仕事しかしてこなかったので(すごい言い訳)、Cookie、知ってはいるけれど具体的にナニをアレしてとか、さっぱりやったことなかったけど、今日ようやく。 CGI::App で Flickr::API を使った認証するのを、Web+DB Press Vol.34 みながら書いてみた。CGI::App化したの以外はだいたい同じ。だらだら全部コード貼り付けておいてみ

  • Catalyst::Helper::View::TTSite と TT の AutoWrapper

    Catalyst::Helper::View::TTSite を使ってみたら、雛形のテンプレートで TT の WRAPPER がみたことがない使われ方をしていたので、調べてみたら TT の Automatic Wrapper という仕組みだった、という話。 今までの自分の TT の使い方。 普段自分が Web アプリなんかで TT を使う時の使い方は、header.tt と footer.tt とか作って、tt_process で指定するテンプレがそいつらを含めてるという、↓のような感じ。 header.tt。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta

    acotie
    acotie 2008/08/14
    ラッパー便利!!!!
  • 1