CakePHP2.0勉強会に行ってきました。

2日続けて勉強会参加となりました。今日はCakePHP2.0 勉強会@Tokyo : ATND

CakePHP1.3も軽く触わったことがある程度だったのですが、今月初めに勉強会に参加したSymfony2や普段仕事で使っているZendFrameworkとの比較の意味も含めて参加してみました。細かくレポートする程には理解出来ていないので(途中のワークショップはほとんどついていけず・・・orz)、気になった点だけ備忘録的に軽く残してこうかと思います。

テスティングフレームワークPHPUnitを採用

1.x系はSimpleTestが標準のテストフレームワークだったのが、2.0からはPHPUnitをベースにするようになるらしい。ZendFrameworkはずっとPHPUnitをベースにしていたから、SymfonyCakePHPPHPUnitに乗っかってきてくれるのはとても都合が良い♪
特にコントローラー系のテストがだいぶ充実したみたいで、セッション管理が必要な画面遷移を含むテストが出来そう、むしろその視点からCakePHPを勉強してみようかな、と思ったりしました。

クラスの動的なローディングに対応

内部的にspl_autoload_registerを使ったオートロードが可能になった模様。
ネーミングルール等に関してはCakePHP2.0のネーミングルールの記事翻訳 - cakephperの日記(CakePHP, Laravel, PHP)が参考になりそうです。
また、Modelクラスのインスタンス化にコストが係るという問題点については、LazyLoadingという考え方を採用し、実際に必要になった時以外はオブジェクトを生成しないようにすることでCakePHP1.3系よりもリソースの消費が少なくなっている模様。

その他所感

コンポーネント疎結合化というのも話題に登っていたのですが、CakePHP1.x系をまともに使ったことがないので、どれくらい変わっているのかあまりピンと来ませんでした。が、ZendFrameworkとかSymfony2の考え方の流れが、やはりCakePHPにも流れているのかな〜、と思ったりしました。

それにしても、いつもつまみ食いばかりになっているようなきがするので、もう少しどっかに腰を落ち着けて勉強しないとな〜と思う今日この頃です。。