CakePHP挫折かなぁ

2週間ほどダラダラとCakePHPを触っていたのですが、今作成しているアプリケーションのユーザ部分への採用は挫折かなぁ。

まず今のタイミング的に1.1と1.2betaが出ているというのがまずいかも。
今後、1.2系に新機能が追加されるというのは考えられないし、1.2にしてもbetaってこともあり、まだノウハウが蓄積されていない。
つまり中途半端な時期。

実際にはPCと携帯のハイブリッドな仕組みを作るのにCakePHPを利用しようと思ったのだけど、結構な割合でカスタマイズしないとならないのがツラい。
app_controller 膨らみすぎ。

それから速度的な問題。
フレームワークだということで仕方ないのかもしれないが、やっぱり遅い。
Modelのアソシエーションとかね。
実際にはその都度 bindModel していくしかないんじゃないのか?
キャッシュとかを使えば早くなるのだろうけども、その為に色々とフレームワークのコードに手を入れていくのはなんだか本末転倒な気がする。
段々オレオレフレームワーク化していくし。

テンプレートにPHPのコードが混ざるというのもどうもなぁ。
Smartyを採用する方法もあるにはあるが、CakePHPの「良さ」を半減してしまう気がするし、だったらCakePHP使う意味薄くない?

作っているアプリケーションの性質にもよるかもしれない。
おそらく、50以上あるテーブルの管理機能とか、CRUDが必要なものなら十分に効果を発揮すると思うのだが、そこまでの規模のものをやっている訳ではないし。

採用したい箇所はあるよ。
Routesの仕組みとかフレームワークならではだと思うし。
でも、よく考えたら、PEARにも Net_URL_Mapper ってのがあるしね。

PEAR::Net_URL_MapperでURLルーティングを制御する
PEAR::Net_URL_Mapper

CakePHP自体はPEARに依存しないことを目指してはいたみたいで、自前で色々とライブラリを備えてはいるだけど、PEARが使えない開発環境/実行環境というものがちょっと考えにくい。
依存しないからすぐにインストールして使える。
それは素晴らしいのだけど、実際の現場ではどれだけメリットがあるか?

ということで、バックエンドの管理機能には採用するかもしれないが、ユーザ部分は見送りかな。