CakeMatsuriTokyo2009に参加してきた
昨日(10/31)、渋谷で開催されたCakeMatsuriTokyo2009の二日目のカンファレンスに参加してきました。
このようなカンファレンスに参加するのはこれまでほとんどなかったのですが、参加して良い刺激になりました。
昨年とは異なり、今年は有料とのことでしたがそれでも100人近くの方が参加されていました。
以下、僕が残したメモと感想になります。
基調講演 CakePHP道 - Yusuke Andoさん
- 価値
- 道
- 術
- かなり局所的な技術
- 法
- CakePHP活用法、呼吸法
- 道
- 技術だけではなく精神論を伴う
- 術
- 心
- コミュニティ哲学
- Give back much as you take:もらった分だけ返そう
- Be polite:礼儀正しく
- Think outside the box:自分の枠にとらわれないこと
- 外部からの刺激は必要かつ重要なもの
- ネットや勉強会で吸収
- 吸収した内容を還元しよう
- コミュニティ哲学
- 技
- 世界
CAKEPHP道とは
-
-
- 外部からのINPUTとOUTPUTでインスピレーションを磨き続ける
- さまざまなテクニックをつかって小さなコードを目指す
- 世界とダイレクトに繋がって世界観を広げる
-
感想
- ユーザが多いことはCakePHPに関する情報も増えることにも繋がりメリットは本当に大きいです。
- 僕もGive back much as you take出来るように頑張ります。
事例紹介その1
CakePHPでつくる地域SNS - あつ さん
- ドメインがばらばらなサイトに対する対応方法
- 複数のサイト用に複数のDocumentRootに共通コードをコピー
- 苦戦した点
- Association
- 用件定義日数
- 30日
- 日本語化ツールを開発したことで開発が容易になった
- 今後の予定
- 携帯への対応
- Ktai Library
スズキ自販サイトでの Cakephp 活用事例 - syuhari さん
一つ目事例
- 経緯
- Cakeを知っていたという唯一つの理由
- CakePHP構成
- Controller:71,Model:100,View:522
- DB:Postgress
- 苦労した点
- 開発当時は参考サイトがなかったこと
二つ目事例
nanapiのレシピ - 和田修一 さん
感想
- どの事例も開発を進める上で工夫されている点があり、参考になりました。
- 前半2つの事例がPostgreSQLを使っていましたが、MySQLとPostgreSQL派どちらが多いのか気になりますね。
- 表示で優先させなくていいデータは非同期で後から取りに行くことは表示速度を向上させるためには重要ということを認識。
ランチタイム
- お昼ですがビールタイム
CakePHP: The framework strikes back 〜フレームワークの逆襲〜 - Graham Weldon 氏
- CakePHP 1.2
- 現在メンテナンスモード
- 開発はCakePHP 1.3以降にフォーカス
- CakePHP 1.3
- JavaScript
- JavaScriptはjQueryがデフォルト
- prototypeやmootoolsもサポート
- ルーティング
- プレフィックスが複数可能になる
- JavaScript
- CakePHP 2.0
- PHPサポート
- PHP4系列はサポート終了
- PHP5.2以降をサポート
- Model
- モデルのやり取りを配列からオブジェクトへ
- オブジェクトを返す場合、参照を返すだけなので、すべての要素を返す配列よりも軽いらしい
- Data Mapper パターンの採用
- モデルのやり取りを配列からオブジェクトへ
- A good look at things
- 全般的にCakePHP1.3系列構成の見直し
- メモリ使用率・速度向上の改善にフォーカス
- メモリ使用量減少の目標数値とかは決まっていない模様
- PHPサポート
プラグイン活用法 - slywalker さん
- プラグイン紹介
- プラグインといえばDebugKit
- Plugin Tips
- Config
- Multtilingualization i18n
- Template
- Accont Manager Plugin
感想
- Accont Manager Pluginが非常に便利であるプラグインであると感じました。
- Theme機能は一度使ってみたいので後で調べようと思います。
Key-Value Stores & Non-Relational Databases - Joel Perras 氏
- Relational Databases
- Modern Web Application
- 可変スキーマを利用
- 多くのフィールドが任意選択できる
- BCNFではnull値は許可されていない
- nullをい許可すると別の問題が発生
- Complex many-to-many relationships
- データベースの結合操作が必要
- 可変スキーマを利用
- ウェブデベロッパーば行うべきこと
- 単に流行に乗るのではなくテスト・検証を行ったものを使用するべき
- The NonRDB Landscape
- CakePHPとどうつなげていくか
- Datasource 今年のマジックワード
- 実例
- Non Relational Store のポイント
- インターフェースを無理やりRelationalにしない
- 透明性よりもシンプルさ優先
- MYSQLドライバのすべてを実装しようとはしない
- 強みを生かすように作成する
感想
- Key-Value Storeに関して関心があったのですが、非リレーショナルデータベースの知識もほとんどなかったため非常にためになりました。
- TokyoTyrant,MecacheDB,CouchDBあたりはもっと勉強しないと。。。
パネルディスカッション - makiesさん 市川さん あつさん 新原さん 小山さん 岸田さん 紀子さん
内容が全て追いきれなかったので感想のみになります。
LightningTalks
CakePHP Fusics - 小山健一郎 さん
- Model Info Pluginの紹介
- DBスキーマとかモデルの関連が図で出力できる
これもAccontManagerPluginと同様に使ってみたい素敵なプラグインのようです。
CakePHP is good - こんのようすけ さん
- CakePHP is Greatが伝わってくる内容
- 大事なのはルール。規約に従うことができればメンテナンスも引継ぎも楽
運用や引継ぎの大変さは身をもって感じます。。。
Remember Me - パーハック キース さん
- CakePHPとRememberMeを使った自動ログインに関する内容
- RememberMeはログイン情報を保存する機能を提供
テストを行うことは重要ですね。
LTのTalkが非常におもしろかったです。
bind,unbindはもう古い!Containable Behaviorでrecursive=3だってこわくない!- 秋田真宏 さん
- ContainableBehaviorを使うことでパフォーマンス向上,findの見通しもよくなる
- AssosicationもBehaviorなら簡単に対応可能
ContainableBehaviorはCakeのコアコンポーネントらしいので標準で使えるみたいです。
Cakeを使う際は導入したいと思いました。
懇親会
- 毎年の恒例となったCakeケーキ
- 3層なのはMVCモデルを表しているかららしいです
二日目のみの参加でしたが、非常に濃い1日でした。
主催者の方々、参加された皆様お疲れ様でした&ありがとうございました。