ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changes between Version 85 and Version 86 of pne-openpne3


Ignore:
Timestamp:
Feb 1, 2008, 4:30:22 PM (14 years ago)
Author:
tejimaa
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • pne-openpne3

    v85 v86  
    1010 * 使われていない機能の統廃合が行われます。
    1111
    12 == PHPフレームワークの選定 ==
    13 PHPフレームワークを導入します。
    14 
    15 [wiki:pne-openpne3-note#PHPフレームワークの選定]
    16 
    17 === 参考情報 ===
    18 ==== Googleトレンド調べ ====
    19 [[Image(http://sc.pne.jp/200712231511.png)]]
    20 
    21 [[Image(http://www.google.com/trends/viz?q=cakephp%2Csymfony%2Czend+framework%2Ccodeigniter%2Cmaple+php&date=ytd&geo=all&graph=weekly_img&ctab=0&sa=N, 400,left)]]
    22 
    23 [[Image(http://www.google.com/trends/viz?q=cakephp%2Csymfony%2Czend+framework%2Ccodeigniter%2Cmaple+php&date=mtd&geo=all&graph=weekly_img&ctab=0&sa=N, 400)]]
    24 
    25 上記のフレームワーク中から選びます。
    26 
    27 === フレームワーク選定の要件 ===
    28 ==== 評価マトリックス ====
    29 ||-||ZendFramework||CakePHP||symfony||ethna||maple||CodeIgniter?||コメント||
    30 ||Googleトレンドの人気||3位||1位||2位||-||-||4位||-||
    31 ||ドキュメント量||◎||○||◎||△||△||?||-||
    32 ||ユーザー構築情報[[BR]] WEBでの使用感のレポートの量||-||-||○||-||-||-||-||
    33 ||[DB]PostgreSQL MySQL SQLiteを抽象化||-||-||○||-||-||-||-||
    34 ||DBのMasterSlave?読み分け[[BR]]更新系と参照系を振分ける仕組みが入っているか[[BR]] OpenPNEでいうところのmainとmain_reader||-||-||△[[BR]] pluginで対応可能||-||無||-||-||
    35 ||部分SSL対応||-||-||△[[BR]] pluginで対応可能||-||無||-||-||
    36 ||Sessionストレージ変更(File DB Memcache)||-||-||○||無||無||-||-||
    37 ||[SlavePNE]POP3 DB HTTP LDAP対応できるか?[[BR]] PEAR::Authのcontainer的なものがあるか?||-||-||○||○[[BR]] xmlrpcでのアプリケーション作成がデフォルトでできる||無||-||-||
    38 ||携帯UAの機種振り分け||-||-||△||-||標準では△[[BR]] →を使えば実装可能||-||[http://pear.php.net/package/Net_UserAgent_Mobile/ pear][http://pear.php.net/package/Net_UserAgent_Mobile/ UsegAgentMobile]||
    39 ||携帯認証カバー(個体識別 キャリアUA)||-||-||×||-||標準では△[[BR]] →を使えば実装可能||-||[http://pear.php.net/package/Net_UserAgent_Mobile/ UsegAgentMobile]||
    40 ||携帯絵文字||-||-||×||無||標準では無[[BR]] →を使えば実装可能||-||[http://php-develop.org/MobilePictogramConverter/ MobilePictgram]||
    41 ||日本語メール送信出来るか?||-||-||○||○||○||-||-||
    42 ||日本語メール受信して処理出来るか?(絵文字含む)||-||-||△||△[[BR]]絵文字は非対応||△[[BR]] 絵文字は非対応||-||-||
    43 ||SQLインジェクションカバー[[BR]] プレースフォルダを使えるか?||-||-||○||○||○||-||-||
    44 ||CSRFカバー[[BR]] doアクションでワンタイムトークン的なものがつかえるか||-||-||○[[BR]] pluginで対応可能||○||-||-||-||
    45 ||XSSカバー[[BR]] OpenPNEはsmartyの出力時にチェックしてる||-||-||◎||-||-||-||-||
    46 ||テンプレートエンジンに選択自由度があるか?[[BR]] OpenPNEはsmartyのみ。||-||smarty使えない||smartyは、[[BR]] pluginを使えば使える||Smarty||Smarty[[BR]] Flexy[[BR]] Simple||-||-||
    47 ||[ktai URL]/.ZsrMKtQAyh9GHdXP./member/1[[BR]][[BR]]携帯の認証について||-||-||△||-||-||-||-||
    48 ||国際化対応レベル||-||-||◎||-||-||-||-||
    49 ||パフォーマンス(FWでの劣化)||-||-||△||-||-||-||-||
    50 ||パフォーマンス(FW機能による高速化)||-||-||○||-||-||-||-||
    51 ||[DB]members id member_id[[BR]][[BR]] ?手嶋確認||-||-||?||-||-||-||-||
    52 ||[URL]/member/1 /community/1[[BR]][[BR]] mod_rewrite使えるってこと?||-||○||○||-||-||-||-||
    53 ||サポートの継続[[BR]][[BR]]開発体制||◎||○||○||○||△[[BR]]昨年度開発がほぼ停止のため||-||-||
    54 ||OpenID Consumer対応||ライブラリ有り||-||pluginで対応可能||-||-||-||-||
    55 ||OpenID Provider対応||ライブラリ有り||-||?||-||-||-||-||
    56 ||OpenSocial Container||-||-||-||-||-||-||-||
    57 ||小窓||OK||OK||OK||OK||OK||OK||-||
    58 ||PHP小窓[[BR]][[BR]] smartyのplugin的なことができるか?||-||-||○||○[[BR]] デフォルトでそんな機能があるそうです||△[[BR]] filterを自作する必要があります||-||-||
    59 ||ページキャッシュ[[BR]][[BR]] smartyのキャッシュ的なものがあるか?||-||-||◎||-||-||-||-||
    60 ||ページコンポーネントごとキャッシュ[[BR]][[BR]] smartyのキャッシュ的なものがあるか?[[BR]] Templateインクルードとかで。||-||-||◎||-||-||-||-||
    61 ||クエリキャッシュ[[BR]][[BR]] adodbとかそのレイヤーのこと。||-||-||◎||-||-||-||-||
    62 ||OpenPNEサンプルコーディングの結果||未||未||未||-||-||未||-||
    63 ||テストフレームワークの有無[[BR]] rubyみたいな||-||-||デフォルトで○||-||無||-||-||
    64 ||サポートするPHPバージョン||5||4 5||5.1||4 5||4 5||4 5||-||
    65 ||一般のレンタルサーバで使えるか?[[BR]] php,mod_rewriteなど||-||-||○||○||○||-||-||
    66 ||リクエストパラメーターの変換が容易か?[[BR]] 「全角→半角」変換するようなコード||-||-||filterでできる||-||○||-||-||
    67 ||Validationの実装が容易||-||-||○||-||○||-||-||
    68 ||action, filter実行時のログ出力機能が標準で備わっている||-||無||○||-||○||-||-||
    69 ||actionの自動生成機能があるか||-||○||○||○||○||-||-||
    70 ||viewの自動生成機能があるか||-||○||○||○||○||-||-||
    71 ||O/R マッパー||○||○||○||○||△[[BR]]開発者が推奨しない||-||-||
    72 ||DI機能||-||-||×||△[[BR]]開発中||○||-||-||
    73 ||他プロジェクトとの連携||-||-||△||-||Seasar[[BR]] Usagi||-||-||
    74 ||似ているフレームワーク||JSF||Ruby On Rail||Ruby On Rail||Struts||Struts||-||-||
    75 ||フレームワークでの文字モジコード設定||-||-||×||-||○||-||-||
    76 ||Ajaxを使うモジュールを作成する機能が標準で入っているか[[BR]] Ajax用Javascriptを書かなくていい、など||-||○||○||△[[BR]]多少は書く必要があります||無||-||-||
    77 ||設定ファイルの記述キジュツ方式ホウシキ||-||ini, php||yml,ini||-||ini||-||-||
    78 ||国内大規模サイトでの開発・運用実績||-||-||△[[BR]] [http://erotube.phalko.com/ link] [[BR]][[BR]] yahooブックマーク||◎[[BR]] http://gree.jp/||○[[BR]] [http://www.webfile.jp/ link] [[BR]] [http://www.keiri-kaikei.com link]||-||-||
    79 ||国内開発用メーリングリスト||◎[[BR]] 国内ML多数||○||○||◎[[BR]]国内ML多数||○[[BR]] 2007年はほぼ休止していた||-||-||
    80 
    81 ==== その他条件 ====
    82  * DB抽象化されていて、PostgreSQL MySQL SQLiteがシームレスに利用できる?
    83    * チューニング目的以外では、セットアップ、DB操作のSQLは1パターンのみで運用可能
    84  * 携帯の特殊な挙動に対して、フレームワークでカバーできるか?
    85  * Smartyテンプレートを使用できるか?(もしくは置き換えるに値する素敵なテンプレートエンジンを使えるか?)
    86  * パフォーマンスが劣化しないか?
    87  * ドキュメントが充実しているか?
    88  * 今後サポートが継続されそうか?
    89  * テスト関連のフレームワークが備わっているか?
    90  * 国際化対応の機構が組み込まれているか?
    91  * トレンドなのでRailsをある程度意識していて欲しい
    92 
    93 ==== 考慮しなくても良い要件 ====
    94  * OpenPNE2系からの移行に伴う作業負荷は考えない
    95  * PHP5限定のフレームワークでも良い
     12== 削減機能のフォローアップ ==
     13
     14=== レビュー ===
    9615
    9716== URLスタイル ==
     
    328247[wiki:pne-i18n]
    329248
     249
     250
     251== PHPフレームワークの選定 ==
     252PHPフレームワークを導入します。
     253
     254[wiki:pne-openpne3-note#PHPフレームワークの選定]
     255
     256=== 参考情報 ===
     257==== Googleトレンド調べ ====
     258[[Image(http://sc.pne.jp/200712231511.png)]]
     259
     260[[Image(http://www.google.com/trends/viz?q=cakephp%2Csymfony%2Czend+framework%2Ccodeigniter%2Cmaple+php&date=ytd&geo=all&graph=weekly_img&ctab=0&sa=N, 400,left)]]
     261
     262[[Image(http://www.google.com/trends/viz?q=cakephp%2Csymfony%2Czend+framework%2Ccodeigniter%2Cmaple+php&date=mtd&geo=all&graph=weekly_img&ctab=0&sa=N, 400)]]
     263
     264上記のフレームワーク中から選びます。
     265
     266=== フレームワーク選定の要件 ===
     267==== 評価マトリックス ====
     268||-||ZendFramework||CakePHP||symfony||ethna||maple||CodeIgniter?||コメント||
     269||Googleトレンドの人気||3位||1位||2位||-||-||4位||-||
     270||ドキュメント量||◎||○||◎||△||△||?||-||
     271||ユーザー構築情報[[BR]] WEBでの使用感のレポートの量||-||-||○||-||-||-||-||
     272||[DB]PostgreSQL MySQL SQLiteを抽象化||-||-||○||-||-||-||-||
     273||DBのMasterSlave?読み分け[[BR]]更新系と参照系を振分ける仕組みが入っているか[[BR]] OpenPNEでいうところのmainとmain_reader||-||-||△[[BR]] pluginで対応可能||-||無||-||-||
     274||部分SSL対応||-||-||△[[BR]] pluginで対応可能||-||無||-||-||
     275||Sessionストレージ変更(File DB Memcache)||-||-||○||無||無||-||-||
     276||[SlavePNE]POP3 DB HTTP LDAP対応できるか?[[BR]] PEAR::Authのcontainer的なものがあるか?||-||-||○||○[[BR]] xmlrpcでのアプリケーション作成がデフォルトでできる||無||-||-||
     277||携帯UAの機種振り分け||-||-||△||-||標準では△[[BR]] →を使えば実装可能||-||[http://pear.php.net/package/Net_UserAgent_Mobile/ pear][http://pear.php.net/package/Net_UserAgent_Mobile/ UsegAgentMobile]||
     278||携帯認証カバー(個体識別 キャリアUA)||-||-||×||-||標準では△[[BR]] →を使えば実装可能||-||[http://pear.php.net/package/Net_UserAgent_Mobile/ UsegAgentMobile]||
     279||携帯絵文字||-||-||×||無||標準では無[[BR]] →を使えば実装可能||-||[http://php-develop.org/MobilePictogramConverter/ MobilePictgram]||
     280||日本語メール送信出来るか?||-||-||○||○||○||-||-||
     281||日本語メール受信して処理出来るか?(絵文字含む)||-||-||△||△[[BR]]絵文字は非対応||△[[BR]] 絵文字は非対応||-||-||
     282||SQLインジェクションカバー[[BR]] プレースフォルダを使えるか?||-||-||○||○||○||-||-||
     283||CSRFカバー[[BR]] doアクションでワンタイムトークン的なものがつかえるか||-||-||○[[BR]] pluginで対応可能||○||-||-||-||
     284||XSSカバー[[BR]] OpenPNEはsmartyの出力時にチェックしてる||-||-||◎||-||-||-||-||
     285||テンプレートエンジンに選択自由度があるか?[[BR]] OpenPNEはsmartyのみ。||-||smarty使えない||smartyは、[[BR]] pluginを使えば使える||Smarty||Smarty[[BR]] Flexy[[BR]] Simple||-||-||
     286||[ktai URL]/.ZsrMKtQAyh9GHdXP./member/1[[BR]][[BR]]携帯の認証について||-||-||△||-||-||-||-||
     287||国際化対応レベル||-||-||◎||-||-||-||-||
     288||パフォーマンス(FWでの劣化)||-||-||△||-||-||-||-||
     289||パフォーマンス(FW機能による高速化)||-||-||○||-||-||-||-||
     290||[DB]members id member_id[[BR]][[BR]] ?手嶋確認||-||-||?||-||-||-||-||
     291||[URL]/member/1 /community/1[[BR]][[BR]] mod_rewrite使えるってこと?||-||○||○||-||-||-||-||
     292||サポートの継続[[BR]][[BR]]開発体制||◎||○||○||○||△[[BR]]昨年度開発がほぼ停止のため||-||-||
     293||OpenID Consumer対応||ライブラリ有り||-||pluginで対応可能||-||-||-||-||
     294||OpenID Provider対応||ライブラリ有り||-||?||-||-||-||-||
     295||OpenSocial Container||-||-||-||-||-||-||-||
     296||小窓||OK||OK||OK||OK||OK||OK||-||
     297||PHP小窓[[BR]][[BR]] smartyのplugin的なことができるか?||-||-||○||○[[BR]] デフォルトでそんな機能があるそうです||△[[BR]] filterを自作する必要があります||-||-||
     298||ページキャッシュ[[BR]][[BR]] smartyのキャッシュ的なものがあるか?||-||-||◎||-||-||-||-||
     299||ページコンポーネントごとキャッシュ[[BR]][[BR]] smartyのキャッシュ的なものがあるか?[[BR]] Templateインクルードとかで。||-||-||◎||-||-||-||-||
     300||クエリキャッシュ[[BR]][[BR]] adodbとかそのレイヤーのこと。||-||-||◎||-||-||-||-||
     301||OpenPNEサンプルコーディングの結果||未||未||未||-||-||未||-||
     302||テストフレームワークの有無[[BR]] rubyみたいな||-||-||デフォルトで○||-||無||-||-||
     303||サポートするPHPバージョン||5||4 5||5.1||4 5||4 5||4 5||-||
     304||一般のレンタルサーバで使えるか?[[BR]] php,mod_rewriteなど||-||-||○||○||○||-||-||
     305||リクエストパラメーターの変換が容易か?[[BR]] 「全角→半角」変換するようなコード||-||-||filterでできる||-||○||-||-||
     306||Validationの実装が容易||-||-||○||-||○||-||-||
     307||action, filter実行時のログ出力機能が標準で備わっている||-||無||○||-||○||-||-||
     308||actionの自動生成機能があるか||-||○||○||○||○||-||-||
     309||viewの自動生成機能があるか||-||○||○||○||○||-||-||
     310||O/R マッパー||○||○||○||○||△[[BR]]開発者が推奨しない||-||-||
     311||DI機能||-||-||×||△[[BR]]開発中||○||-||-||
     312||他プロジェクトとの連携||-||-||△||-||Seasar[[BR]] Usagi||-||-||
     313||似ているフレームワーク||JSF||Ruby On Rail||Ruby On Rail||Struts||Struts||-||-||
     314||フレームワークでの文字モジコード設定||-||-||×||-||○||-||-||
     315||Ajaxを使うモジュールを作成する機能が標準で入っているか[[BR]] Ajax用Javascriptを書かなくていい、など||-||○||○||△[[BR]]多少は書く必要があります||無||-||-||
     316||設定ファイルの記述キジュツ方式ホウシキ||-||ini, php||yml,ini||-||ini||-||-||
     317||国内大規模サイトでの開発・運用実績||-||-||△[[BR]] [http://erotube.phalko.com/ link] [[BR]][[BR]] yahooブックマーク||◎[[BR]] http://gree.jp/||○[[BR]] [http://www.webfile.jp/ link] [[BR]] [http://www.keiri-kaikei.com link]||-||-||
     318||国内開発用メーリングリスト||◎[[BR]] 国内ML多数||○||○||◎[[BR]]国内ML多数||○[[BR]] 2007年はほぼ休止していた||-||-||
     319
     320==== その他条件 ====
     321 * DB抽象化されていて、PostgreSQL MySQL SQLiteがシームレスに利用できる?
     322   * チューニング目的以外では、セットアップ、DB操作のSQLは1パターンのみで運用可能
     323 * 携帯の特殊な挙動に対して、フレームワークでカバーできるか?
     324 * Smartyテンプレートを使用できるか?(もしくは置き換えるに値する素敵なテンプレートエンジンを使えるか?)
     325 * パフォーマンスが劣化しないか?
     326 * ドキュメントが充実しているか?
     327 * 今後サポートが継続されそうか?
     328 * テスト関連のフレームワークが備わっているか?
     329 * 国際化対応の機構が組み込まれているか?
     330 * トレンドなのでRailsをある程度意識していて欲しい
     331
     332==== 考慮しなくても良い要件 ====
     333 * OpenPNE2系からの移行に伴う作業負荷は考えない
     334 * PHP5限定のフレームワークでも良い
     335
     336
     337
     338
    330339[[WikiInclude(DIRECTORYNAVI)]]