第49回PHP勉強会に参加してきた

01/30(土)に開催された、第49回PHP勉強会に参加してきました。
今回は株式会社コンテンツワンさんに会場をお借りしての開催。
発表された順で紹介して行きます。

Lithiumラボ #1 超先進的フレームワーク  yandoさん

Ceke3から派生したフレームワークLithiumの紹介です。
* メモ *

  • PHP5.3以降専用のフレームワーク
    • PHP5.3以降専用としては(有名どころでは)初めてのFW
  • クオリティ、速度、柔軟性を追求して作られた
  • 分散ストレージ、キュー、ドキュメント指向DBを積極的に利用している
  • 特徴
    • 拡張性がある
      • コアライブラリがほぼ完全に分離されている
      • 静的遅延束縛でstaticメソッドも拡張できる
      • Librariesクラスという、Lithiumのコアライブラリについて書かれているクラスで読み込むライブラリを差し替えられる。追加もできる。
      • 超先進的なフィルタ機能が使える(コールバックに頼らない拡張が可能。サブクラスを作る必要もない)。フィルタ処理はクロージャで指定
    • Namespaceを使い始めたことで設定に関する記述が減った
    • PHP5.3の機能を徹底的に使っている
  • DBはMongoDBもしくはCouchDBがよい
    • MySQLはまだ一応動くレベルでしか作り込まれていない
  • Cake時代からの変更点
    • DBの設定ファイルはdatabase.phpからconnection.phpって名前になってる
    • PHP5.3用の記述が入ってる(Namespaceとか)
  • LithiumのルールではClass名とファイル名は完全一致
  • Namespaceの区切りとファイル構造の作りは一致
  • 利用方法
  • 現在バージョン0.5までリリースされていて、絶賛開発中。
  • Lithium Project http://rad-dev.org/

* 感想 *
英語圏では「リチウム」って発言したらだめらしいですwほんとは「りふぃうむ」みたいな発音。
まだほとんどPHP5.3を触ったことないのですが、Lithiumを使ってみることでNamespaceとかクロージャのこととか色々勉強できそうです。
何より拡張性に優れた最先端のフレームワークということで、すごく興味がわきました。

PHPでBrainF*ck  msakamoto-sfさん

* メモ *

  • プログラミング言語Misaに触発されて作ってみた
  • BrainF*ckとは?
    • 8つのアドレスだけで作られた言語
    • メモリアドレスをポインタで操作して行く
  • Misaは命令セットを日本語文字を使って拡張している
  • 興味のある人はAcme_BrainPhackをOPENPEARからインストールしてみてね

* 感想 *
AAだらけのプレゼンw
とりあえず「でっていう」にはウケましたw

NetBeansAgavi使って携帯サイト開発してみた  MugeSoさん

NetBeansを使った開発手法のご紹介です。
* メモ *

  • ねこびーん
  • NetBeansを使ってよかったこと
    • オートコンプリートが使える
    • コメントによる型ヒントが与えられます
    • インデントをプロジェクトごとに設定できる
    • 各種バージョン管理システムと連携できる
  • 悪かったとこ
    • プロジェクトで指定した文字コードでファイルを開こうとする
    • XMLの空要素のインデントがおかしい
    • symfonyに対応してるのにAgaviに対応していない ←ちょw

* 感想 *
私も最近NetBeans使ってみてるので、内容的にはなるほど、という感じでした。
Agavi知らなくてすみません・・・;
symfony対応はほんとにステキです!

Datasourceをオススメします  kaz_29さん

CakePHPのDatasourceというモデルの拡張機能の紹介
*メモ*

  • Datasoureって?
    • モデルと、モデルが表現しているデータ自体をリンクするもの
    • 通常、データはMySQL, PostgresSQLといったリレーショナルデータベースから利用されている
    • Cakeにはあらかじめ、いくつかのDatasourceが用意されている。
  • app/config/database.phpを書き換えることで、自動的にそのDatasourceを使うようになる
  • 必要なメソッド
    • listSources, describe, calculate
  • 1.2系はDatasoueceのPlugin化は不可

*感想*
ほんとに簡単にデータ出せてた!
RDB以外のデータをDBと同じように扱うことができるってすごいですねー。
CakePHPのサイトで、CSV用とかTwitter用とか色々用意されているらしいので要チェック

MongoDB + PHP + CakePHP  ichikawayさん

MongoDBというドキュメント指向DBについての発表。
*メモ*

  • MongoDBとは?
    • NYの会社が作っているドキュメント指向DB
  • 得意なもの
    • パフォーマンス
    • スケール
  • 不得意なもの
  • PHP+MongoDB
    • MongoDBのサイトから落とせる。
    • PEARのサイトにも日本語訳があるよ!
  • CakePHP+MongoDB
    • MongoDBの公式サイトからichikawayさんが作ったdatasourseへのリンクがはってある
  • パフォーマンスってどれくらいいいの?
    • 噂ではMysqlの4〜5倍、CouchDBの2倍くらいらしい

*感想*
NoSQLがあついですね。
私はRDB(というかMySQL)しか使ったことないのですが、パフォーマンスの差とか見るとほんとびっくりしますw
ジョインとかできないので使いどころを考えるのが難しいですけど・・・業務で結構大きいデータ扱ったりするし勉強してみよう。

全体の感想

今回は休日のお昼から開催ということで時間もたっぷりあって、かなり豪華な内容でした。
CakePHPに関する発表が多かった印象。。ちょこちょこ笑いもあっていい雰囲気だったなー。
あと、珍しく女子が4人もいました!!!これからも増えて行くとうれしい!!
New名刺を持って行ったのですが、懇親会参加された方には渡せてよかったですw
2次会のカラオケではgusagiさんのステキ動画を撮ったのでいつか何かに使いたいと思います(ぇ


最後に、会場を提供してくださった株式会社コンテンツワンさん、司会進行/幹事をしてくださったgusagiさん、Ust中継してくださったNEKOGETさん、そして参加されたみなさま、ありがとうございました!