CakePHP を使っていて、その優位性についていくつか疑問に思ったことがありますのでご紹介します。

■複合キーが絶対に必要な場合

CakePHP は複合キーに対応していません。設計次第でなんとかなる部分かもしれませんが、 CakePHP に不得手であることは事実です。たとえば EC サイトなどは全てのマスタデータに対して日付という第2のキーを設定することが多くありますが、これを CakePHP は綺麗に表現できません。

■ボトムアップでシステムを作らなければならない場合

以前のエントリーにもあるように、 CakePHP は Scaffolding という機能を駆使したトップダウンの開発アプローチに一番向いています。

スケジュールがきっちり決まっているウォーターフォールのような手法で、開発の進捗とスケジュールのガントチャートとのズレが問題になるような場合は CakePHP の優位性は保つことができません。

以上です、何かの参考になれば幸いです。