ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Let's PHPコミュのPHPのフレームワーク選定

  • mixiチェック
  • このエントリーをはてなブックマークに追加
PHPのフレームワークを使おうと思い現在調査中です。
RubyOnRails系のフレームワークを利用しようと思っています。

PHPでは「symfony」「CakePHP」の2つがあるみたいですが、どちらを選択しようか迷っています。

世界的に見て、どちらがメジャーなのでしょうか?
Googleのインデックス数もそれ程変わらなかったので今いちわかりませんでした。

国内ではCakePHPの方がGoogleインデックス数は多く感じましたが、有名ブロガーが採用している等で、インデックス数の差が出ているのかなぁと思っています。

後、日本語での情報の充実度や、信頼度(バージョンアップ停止等おこらないか)、など情報を頂けないでしょうか?
英語が出来ないので日本語コミュニティがある程度盛り上がってると助かります。

ちなみに直近ではPCサイトを作成を作成する予定ですが、今後は携帯サイトも作成する予定です。

Linux,MySQL,PHP5を利用する予定です。

よろしくお願い致します。

コメント(13)

以前に少し調べた時の結果です。参考にしてください。
http://www.jamboree.jp/cms/archives/83

世界的に見ても現在はCakePHPに軍配があがるみたいですね。
ただ、決してCakePHPの設計がすばらしいとかではなく、レンタルサーバでもファイルを配置するだけで動くという強みがユーザ数を増やしているじゃないかなと思います。

Railsからの以降ということであればRailsの完全コピーを目指しているAkelosというフレームワークも注目されてきていますよ。
Cakeは楽したいときに使うのが良いかなと。
Bakeするとさらに楽ですね。
モック作る時にも良いかも…?
Mojaviを使った後だったので、Cakeの楽さには感動しました。

PHP5に限るなら、symfonyが良さそうな雰囲気ですねー。
私はPHP4環境なのでまだ使えてませんが…。

ZendFramework,CakePHP,symfonyの3つのフレームワークについて
書かれた書籍も出ていますので、参考にされてみては?
http://www.amazon.co.jp/dp/4896273567/
それぞれの長所・短所が見えてくるかも…。

私はCake好きなので、参考サイトをいくつか書いておきますね。
CakePHP日本語フォーラム
http://cakephp.jp/
CakePHP プログラマーズ リファレンスガイド
http://www.cakephp.jp/doc/
CakePHP プログラマーズ リファレンスガイド PDF版
http://d.hatena.ne.jp/hetima/20061211/1165845362
CakePHPチートシート
http://www.cakephp.org/files/cakesheet.pdf
mixi CakePHPコミュニティ
http://mixi.jp/view_community.pl?id=642521
一言で言ってしまえば好みの差です。
あとは、規模感の問題も多少ありますね。


自動化部分の性能や管理のしやすさはsymfonyのほうがあるので、ある程度規模が大きくなってくるとsymfonyのほうが楽です。
スケルトン生成は充実しているので、申し分はないでしょう。余計なこともしません。
PHP5専用に限定したことでExceptionをFWレベルでサポートできていることも含め、デバッグモードが非常にしっかりしているのは他の追随を許さない魅力です。
project/appsのディレクトリ構造が役割ごとにがっちり分割されていて、あらゆる所に拡張ポイントが用意されているので、アプリケーション自体を高いレベルで構造化できます。

手っ取り早く作ると言う意味ではCakeのほうが有利ですね。
本体には手を入れるな!とは言っているものの、開発開始時からfreezeしてあるようなものなので、ダイレクトにFW自体を変えてしまうという選択も取りやすく、柔軟性が高いです。
symfonyのようにディレクトリが深くない、というのも潜在的に手軽さをフォローしていると思います。symfonyはtemplateとcss/jsの物理的距離が激しいのなんの。
appとFW本体との距離が遠いと、FWの不可侵ぶりが高まります(そうでなくても不可侵にすべきですがw)し、appの構造が深いというだけでも、「めんどくささ」を助長しますよね。これって無関係なように見えて、意外と作業の負担になっている気がします。

そういった面で見るとわかりやすいですが、CakePHPよりもsymfonyのほうが制約が強いですね。
制約が強いのを良いと見る考え(均一性の確保)と悪いと見る考え(柔軟性の欠如)の両方があると思います。

ただ、どちらも成熟したFWですし、使おうと思えばCakeの縛りにがっちり従ったり、symfonyをfreezeしてバリバリhackする、なんて事も行えるので、やはり好みの問題だと思います。

日本語の情報は、どちらも大規模なマニュアルの邦訳や和書があるので、憂慮すべき部分ではないと思います。
人気でいえば、日本ではCakeが非常に好かれており、欧州ではsymfonyが抜群です。
・・・まぁ、この話は人の受け売りですが。

あと、携帯での開発を視野に入れた場合、拙作で恐縮ですがsymfonyでこういったライブラリを公開したりしています。
http://blog.asial.co.jp/351
今後もこういったプラグインを充実させていきたいと思っています。

自分はsymfony屋さんですので、Cakeの説明に多少思い込みがまざってるかも知れませんが、ご参考まで。
皆様ありがとうございます。

かなり参考になりました。

私はパフォーマンスは2の次で開発スピードを重視しております。

CakePHPとSymfonyで比較したのですが、習得までに要する時間は、個人的にCakePHPの方が早そうだったので、CakePHPを選択しようと思いました。

国内で利用者が多いという事での情報量の多さも選択した理由の一つです。
現状、何かつまった時に検索すると、見つかる確率はCakePHPの方がやはり高いと感じました。(日本語サイトで)


Symfonyについては、ゆどうふさんが言われた
「ExceptionをFWレベルでサポートできていることも含め、デバッグモードが非常にしっかりしている」
というのは気持ちが揺れ動くぐらい、魅力的でした。

CakePHPにも同様機能サポートしてもらいたい限りです。
Exception対応となると、PHP4ベースのCakeではコード全て書き直しになりそうなので、対応するとしてもCakePHP2とか、かなり先の話しになりそうですが、、、


皆様、いろいろアドバイス頂きありがとうござました。
日本ではCodeigniterは知られていないのかな?CakeもいいけどCodeigniterも結構いいですよ。
Cakeを使ってましたが、連想配列地獄に慣れるまでは大変でした。
少し複雑なDBを設計すると、foreachの中にforeachとか

Symfonyはがっちり系な気がするし、趣向が分かれるところですね。
>6 ケロリさん
どのあたりがおすすめでしょう?
私、ものすごく興味あって
少し勉強しようと思うのですが
他のものと比べた違いがよく分からなくて…。
Codeigniterは軽量フレームワークなので私的に好きですね。
本も本月9日に発売してユーザー会でも多数のヘルパーも出ています。

Codeigniterユーザー会
http://codeigniter.jp/

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Let's PHP 更新情報

Let's PHPのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。