yiiフレームワークを使ってみた
DESCRIPTION
関西アンカンファレンスで発表したネタ。最後までできなかったので。TRANSCRIPT
Yiiフレームワークを使ってみた
たなかひさてる@tanakahisateru
自己紹介
なまえ:たなかひさてるプログラマー株式会社ループという会社にいますFirebugなんかのローカライズをしていますPinocoというOSSを提供していますTwitter: @tanakahisateru
Yiiってなに?
イー
Yiiってなに?
コレジャナイ
Yiiってなに?
http://www.yiiframework.com/
なにやらPHPのフレームワークらしい日本では流行ってないみたいマイナー技術大好物→ 調べてみたすごい性能だという噂
マジかこれ!!
というわけで
ずいぶん大きく出たぞこいつどれ、その実力を見てやろうじゃないか
というわけで、やってみました実演しながらいきます
パーミッションの調整が面倒なのでMAMPを使います
実演
まずはプロジェクト作成
ざっと眺めたところ
初期状態でデザインが綺麗最初からお問い合わせフォームつき最初から(仮の)ログインフォームつきJSライブラリ:jQuery
CSSフレームワーク:Blueprint
バッテリーインクルード(電池つき)な感じ
パフォーマンス確認
静的ページのレンダリング性能CakePHP 58.14 trans/sec
Yii 208.33 trans/sec
さっきのグラフほどではないけど約4倍差
実演
giiの設定とかデータベースの読み書きとか
ここまでで
まだプログラム書いていません考え方はCakePHPに似てそう要るものがぜんぶ入ってるXMLやYAMLを使わずarrayを多用でもPHP5:これ重要
PHP4を捨てたCakePHP 2.0は、やっと開発ブランチが出たところ
実演
ちょっとカスタマイズしてみる
ナビゲーションラベルデータ表示アクセス制御
コードを見た感じ
アクセス制御の実装Controller::accessRules だけ→ 簡単
ほか、いろいろカスタマイズポイントがわかりやすい気がしたModel::rules とか Model::attributeLabels とか
実演
カスタマイズしてる途中でデータベースのフィールドを増やしてみる
い、いまの見た!?
giiのdiffがすごかったCakePHPとかのbakeでやっちゃったことある人はここ泣くとこですね
一人で完全なプログラムを設計できなくても、部分カスタマイズでプロトタイピングできそう
もうちょっと面白いところ
クラスに getHoge()メソッドがあるとき、 $object->hoge ってやったら、その値にアクセスできた。
勢いで作ったもの
ファイルアップロードが標準APIにあったので、部分理解でアプリケーションが作れるか挑戦
My Photobook
感想
オブジェクト指向設計だしAPIマニュアルがすごく広大特にHTML出力のビュー系APIが激しく高度日付や時刻の扱いがよくわからなかった結局まだモジュールやコンポーネントの概念がつかめてないすぐに動くせに案外奥深いじゃないか本は出てないのか本は!
Amazonでyiiの和書を検索してみました。
本
<相原式>最大効果の中国語勉強法 [単行本(ソフトカバー)]
出版社: PHP研究所
(2010/3/13)
本
またそっちのPHPかよ
本はないけど
ついでに
これがCMSのバックエンドだと想定して
閲覧専用サイトも作ってみた
PinocoとPHPTALを使いましたPHPTAL=XHTML互換なテンプレート
Dreamweaverで崩れない:デザイナーフレンドリーマクロが高度:バージョン管理と相性いい
Pinoco
プレーンPHPを使うサイト作成フレームワーク静的ページの表示が速い変数がないページは静的サイトのように更新可能
まとめ
管理アプリ:Yii公開サイト:Pinoco + PHPTAL
最強...になったらいいなあ。もうちょっと勉強します。
ありがとうございました。