2012年8月28日火曜日

PerlBeginners #4 行ってきました

お疲れ様でした!初参加でした!

今回のテーマは「オブジェクトとパッケージ」でした。
一応、概念は別の言語で理解しているつもりなのでPerlでもいけるだろう、と思いましたがPerlのオブジェクト指向よくわからない/(^o^)\

あと、Acme全集2012を入手しました。

メモ

Perlのオブジェクト指向で気になったところをメモると
  • use parent 'Animal'; で継承
  • use parent ('Cat', 'Bird'); 多重継承可能!
  • lib/ 配下に置くのが主流のよう
  • ファイルの最後には「1;」を書く(trueな値を書く)
  • Mouse使うのもあり。
  • Mixin的な事をしたい場合、Exporterを使う
    • 基本構文ではない
  • URI::httpは演算子のオーバーロードをしている
    • なるほど、use overload ('""'     => sub { ${$_[0]} },)で文字列として評価しようとした時の動きを変えている様子。
    • ${$_[0]} } の意味がよくわからない…オブジェクト自身($_[0])を${}で囲んでいる。するとなぜか値が返ってくる
      • 確かに「warn Dumper ${ $res->{link} };」の様に${}で囲めばうまくいく!
    • 多分blessの値を返してる。
      • インスタンス変数のイメージでOK?
    • ${$_[0]} } は、オブジェクト自体をデリファレンスしているということ??
    • 色々試してみました

@ytnobodyさんのgithubからLTで使っていたサンプルコード入手して、ゴニョゴニョ触ってみました。blessでインスタンスを作るなどして、なんとなくちょっと分かってきた気がしてます。

ググった

  • my $class = shift; で何をshiftしているのか分からなかったけど、$_;  @_;が省略されているっぽい。
    • 【追記】@toku_bass さんに$_ではなく@_が省略されていることを教えてもらいました!
  • $オブジェクト->サブルーチン(); で呼ぶときは第一引数にはオブジェクト自身が入る。
なるほど。

ビギナーズセッション

@__papix__さんの発表
pappixさん、次は別のpmにも行かれるようで行動力に驚きました。

発表内容

オブジェクトやパッケージの概念を理解するのに役だったモジュールは?
⇛ @ytnbodyさんの回答
・以下のピンク色のページが役に立った
http://www.rwds.net/kuroita/program/Perl_oo.html
・LWP::UserAgentを操作してオブジェクトの操作に慣れるのもオススメ

懇親会

ハワイ料理でした。



初参加でしたが、色々と話してくれたので楽しめました。
「Hachioji.pmはすごくたのしい!」とすっごい押していました。Hachioji.pmは凄いところらしいです…!

0 件のコメント:

コメントを投稿