第31回PHP勉強会に行ってきました

「第31回PHP勉強会」http://events.php.gr.jp/event.php/event_show/37


19時半開始なので、19時定時にはぎりぎりな感じで、あわてて会社を飛び出していきました。
が、結局まよってしまい、着いたのは19:40ぐらい。
btoさんの話がすでに始まっていました。

PHP5移行ツールを作ってる

btoさん
デモの途中からになってしまいました。
kmyaccを使って、phpの構文を解釈させてどーのこーのという話。
phpのソースを解釈して階層構造にしてと。
正規表現では絶対に無理なところ。

デモとしては、array_mergeとか、[]のarrayリテラルの追加とか。


php4->php5への機械的な移行が出来るようにしているので、実際に移行したら喜ばれそうなライブラリがあったら教えて欲しいとのことでした。
近いうちに公開してくれるそうです。

PHPのsessionモジュールのソースコードで気づいたこと

id:msakamoto-sf
phpは趣味でされているとのこと。
Xhwlayを作っているそうです。
イベント駆動指向のステートフルページフロー実行エンジン
http://xhwlay.sourceforge.net/ja/


flockについての歴史とか。
自前で、セッションを作った時に問題が出てくるロックについてなど。
cgiのアクセスカウンタで枯れた技術
以下のサイトが詳しく載っているいるそうです。
http://testwiki.xn--xnq.jp/index.php?PHP

アドバイザリロック
man 2 flock
man 2 fcntl
adivisory lock 推奨ロック 問い合わせ型ロック
mandatory lock OSレベルでロック 実装されてない?


次に、自作のDBセッションを使った場合のロックについて。
DB接続のセッションをセッションと、ビジネスロジック用でを分けるとか。
MyISAMではだめ
InnoDBで適切なセッションをする。
あとは、select ... for updateを使ってロックする。


質疑応答で、こんな意見が出てきました。
NFS上でflockが動かない。
btoさんは、flockにはいい思い出がない。
mkdir形式のロックを使うとのことです。

マッシュアップアワードとPHP

リクルート/メディアテクノロジーラボ 川崎さん
http://www.kawa.net/


WSS(Web Service Schema)についてのお話でした。


まずは、リクルートの説明
14個WebサービスをAPIとして提供しているそうです。
カーセンサーAPIとか。


それぞれの接続時のライブラリを、YAMLで定義ファイルを作成すれば、ライブラリを自動生成できる。
さらに、YAMLで定義すれば、XMLでやり取りしているWebAPIをいろいろ対応できる。


質疑応答で、Twitterのように発言をPOSTする形式もrequestのクラスを継承拡張することで対応できるとのことでした。
responseも同様で、戻りが画像という場合などにも対応できるそうです。

テスト厨になりたいあなたのための、DocTest

株式会社エムズリンク 高橋さん(id:kunit)
DocTestについて。

テストについては、角谷さんのプレゼンの資料を使って説明されてました。
「日本PostgreSQLユーザ会北海道支部 / Ruby札幌 合同セミナー」
http://kakutani.com/20080219.html#p02
スライド資料や動画もあるようです。ここで、説明するより資料見てみてください。


で、DocTestの本題。
Docコメントにテストを書く。
そうすると、ページを行き来しなくても1枚のファイルの中で、テストと実コードを同時に書ける。
そして、phpdocなどで生成したAPIリファレンスにテストケースが出てくる。


実際に、業務では、SimpleTestを使ったテストケースを書いていますが、結構な量になった場合に、Docコメント部分にテストがあるというのはどうなんだろうなぁと思ったりもしました。

PHP中級者って?」ディスカッション

id:shimookaさん
phpは敷居が低いことから、入門本も数多く、初心者と呼ばれる人が多いけど、中級者になるためには、どんな勉強やどんなステップが必要なのか。
いくつか話が出ましたが、印象に残っているのは、実際にいいフレームワークや本などの教材があったとして、実際にそれを使い、吸収し、成長していくのは本人しだい。
なので、はっぱをかけるような働きかけが必要。
そして、php勉強会もすぐに席がうまってしまうので、初回枠のような始めての人が必ず来るようにしていくのがいいのではないか。という話。


「中級者」という定義自体が難しいです。
これは別途書いてみたいと思います。

懇親会

懇親会は焼肉でした。
いろいろ話が出来て面白かった。
btoさんのkmyaccの話は、テーブルが別だったので直接参加は出来なかったけど、聞き耳たててました。

最後に

株式会社ノッキングオンさん場所の提供ありがとうございました。

修正(2008-03-02)

冒頭のリンク間違えていました。
どうりでトラックバックにならないわけだ。。。