PRADO は、オープンソース で作成されたオブジェクト指向のイベント駆動型かつコンポーネントベースなPHPで書かれたWebアプリケーションフレームワークである。PRADOの名称は「PHP Rapid Application Development Object-oriented (PHPによる迅速なオブジェクト指向的アプリケーション開発)」の頭文字より名付けられた[1]。
歴史
PRADOプロジェクトは、Apacheタペストリー(アパッチ・タペストリー)に触発されたQiang(Charlie) Xue(中国名:薛強)によって始められた[1][2]。このフレームワークは、Borland DelphiやマイクロソフトのASP.NETからも着想を得ている。PRADOの最初の公式リリースは2004年6月であるが、PHP4で書かれたオブジェクトモデルが様々な問題を発生させていた為、新しいPHP5のオブジェクトモデルのフレームワークに書き直されて、Zend PHP5コンテストに出場して特賞を受賞した。
2004年8月にオープンソースプロジェクトとして SourceForgeにて提供し始め、続いてプロジェクトサイト「xisc.com」を公開した。2005年中頃にバージョン2.0へとバージョンアップした。このバージョンでは、Wei Zhuoによりi18N/L10Nサポートの実装がされた。
2006年4月に、バージョン2.0で見つかった問題点を解決し、Microsoft ASP.NET2.0で利用可能ないくつかの機能を実装したバージョン3.0をリリースした。
主な機能
- 再利用性 - 開発したコードを再利用する事ができる。
- イベント駆動型プログラミング - サーバーイベントとしてユーザーのアクションを取得する事ができるので、 開発者はユーザの操作とアプリケーションとの相互作用に集中できる。
- チーム統合 - 画面出力部分とロジック部分が別々に保存されるので、デザイナーと開発者の連携が容易となる。
- バージョン3.1から、PRADOはデータベース接続機能をサポートしている。開発者はビジネスロジックの複雑さに応じて、以下の3つのデータベース接続の中から選択する事ができる。
- i18N8N/L10Nサポート - 国際化ならびにローカライズに対応している。(メッセージ翻訳・日付と時刻の書式・番号の書式設定およびインターフェイス等)
- その他の機能 - 主なものとして下記の機能がある。
特徴
コンポーネントベースとイベント駆動型である点[3](ほとんどのPHPフレームワークでは、画面表示部分とロジック部分を分離することに着目し、そのためにMVCデザインパターンで開発することを推奨)。
MVCフレームワークではない[4]。
コードジェネレータは用意されていない。
ライセンス
PRADOは、二次的著作物のソースコードを公開しないでオープンソースとプロプライエタリソフトウェアの両方のウェブアプリケーションの開発においてPRADOの無料利用可能とする修正BSDライセンスの下でリリースされている。
つまり、著作権表示・ライセンス条文・無保証の旨の三点をドキュメント等に記載さえしておけば、BSDライセンスのソースコードを他のプログラムに組み込み、しかも組み込み後のソースコードを非公開にすることも可能である。(WikipediaのBSDライセンスの記事より引用して説明。)
インストール
PRADOの最小構成は、サーバがPHP5をサポートしていること。
PRADO はWindowsとLinux両環境のApacheサーバーでテストされている。
Yiiとの関係性
PHPで書かれたWebアプリケーションフレームワークの1つであるYiiは、PRADOの開発者であるQiangが、PRADOでの経験を基に、PRADOのコンセプトの再定義し、高速であり高負荷なシナリオ実行時において発生する不具合を克服する新たなPHPフレームワークとして、2008年に開発した。
関連項目
脚注
外部リンク