20090313 cakephpstudy
TRANSCRIPT
![Page 1: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/1.jpg)
今こそプラグイン
1
2009/03/13 yandod
CakePHP勉強会@福岡
![Page 2: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/2.jpg)
About me
name Yusuke Ando aka, yandod
Talking and writing about PHP.
CakePHP evengelist.
I love cat,curry,golf and CakePHP.
Bringed elephpant and cakephp.
Say HELLO AD7six!!! :---)
2
![Page 3: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/3.jpg)
CakePHP news
CakePHP1.2.1のpaginateに脆弱性が!!
日本のコミュニティの活動で速やかに修正
http://cakephp.jp/modules/newbb/viewtopic.php?viewmode=flat&topic_id=1779&forum=9
つまり1.2.2がもうすぐ出ます!!
ご注意ください
3
![Page 4: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/4.jpg)
4
アジェンダ
プラグインとは
試す価値アリのプラグイン2種
debug_kit
api_genarator
news
![Page 5: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/5.jpg)
プラグインとは
5
![Page 6: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/6.jpg)
6
プラグインとは
CakePHPの機能を拡張する仕組み
マニュアルは一応あるhttp://book.cakephp.org/ja/view/114/
拡張の仕組みは他にもある
Component
Helper
Behavior
まだややマイナーな機能といえる
![Page 7: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/7.jpg)
7
身近な拡張方法たち
MVCそれぞれに対する拡張方法を提供
Component
→Controllerに対する実装を共通化
Behavior
→Modelに対する実装を共通化
Helper
→View内での実装を共通化
![Page 8: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/8.jpg)
8
何が違うんだろう
“コントローラ・モデル・ビューのコンビを~”
![Page 9: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/9.jpg)
9
プラグインだと
独自の画面などを含む小さなアプリケーションを開発するアプリケーションに追加したりできる!
Controllerそのものを含めることができる
Modelそのものを含めることができる
Viewそのものを含めることができる
![Page 10: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/10.jpg)
試す価値アリの有力プラグイン
10
![Page 11: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/11.jpg)
11
debug_kit
mark_story によるデバッグ支援プラグイン
実行時に各種情報を見やすく表示
設定は簡単
![Page 12: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/12.jpg)
debug_kitの入手
12
http://cakephp.org/downloads/Resources
![Page 13: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/13.jpg)
debug_kitの設定
13
<?php
Class AppController extends Controller
{
var $components = array('DebugKit.Toolbar');
}
?>
app/plugins/ に配置し、app_controllerから有効化
![Page 14: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/14.jpg)
14
api_generator
公式のAPIドキュメントを生成しているプラグイン
対象のソースコードをReflectionで解析
動的にAPIドキュメントを生成して表示
検索用のインデックスのみシェル実行が必要
画期的なドキュメント生成ツール
![Page 15: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/15.jpg)
15
api_generatorの動作イメージ
CakePHPのAPIドキュメントと同じ体裁
![Page 16: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/16.jpg)
Api_generatorの入手
16
http://thechaw.com/api_generator からgitで落とす
git clone [email protected]:api_generator.git
![Page 17: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/17.jpg)
api_generatorの設定
17
cake api_index initdb
cake api_index update
app/plugins/ に配置し、シェルを実行する
(途中でいろいろ設定を聞かれます)
![Page 18: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/18.jpg)
18
These plugins told us that
plugin専用の画面を持つことができる
plugin内にComponentを設けることも可能
面白いものがつくれるかも
ディープなCake使いにとってのフロンティア
![Page 19: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/19.jpg)
まとめ
19
![Page 20: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/20.jpg)
まとめ
まずは今あるプラグインを有効活用
構造に慣れてきたら既存機能をプラグイン化
Gitもそろそろ使い始めてみるとよいかも
20
![Page 21: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/21.jpg)
New CakePHP books is coming !!
21
Cakeの本たちがまた出ます
「 CakePHPによるWebアプリケーション開発」
「 CakePHPによる実践Webアプリケーション開発」
(詳細は新原さんの発表で)
![Page 22: 20090313 Cakephpstudy](https://reader034.vdocuments.pub/reader034/viewer/2022042818/55beb293bb61eb946c8b4787/html5/thumbnails/22.jpg)
22
質疑応答
ご静聴ありがとうございました。