OpnePNEの構造やフレームワークとか

はてなブックマークに追加はてなブックマーク Yahoo!ブックマークに登録 ニフティクリップに追加 Livedoor クリップに追加 BuzzurlにブックマークBuzzurlにブックマーク Twitterに投稿  

OpnePNEの構造やフレームワークとかについて、分かったことをまとめておきます。
OpenPNEは、PHPで書かれており、ソースはけっこう読みやすいです。
ただし、いたるところで、データベースに格納するデータの変数に、「$p」という変数名が使われており、この$pが何者かという予測が付けにくい・・・。略しすぎです、変数名。

現在、改造・拡張しているOpenPNEのバージョンは、OpenPNE-2.12.5で、最新の安定バージョン。
独自のMVCフレームワークで作られている。
ただし、もうすぐリリースされる予定のOpenPNE3からは、PHPのフレームワークであるSymfonyでシステムが刷新されるらしい・・・。


以下、具体的なOpnePNEのMVCモデルの構図。

モデル(DB操作周り): webapp/modules/pc/do
ビュー(Smarty): webapp/modules/pc/templates/
コントローラー(アクション): webapp/modules/pc/page/

それぞれM(モデル)、V(ビュー)、C(コントローラー)ディレクトリ以下のファイル名には、一文字のプレフィックスがついてて、その意味は・・・

h_ :自分関連
c_ :コミュニティ関連
f_  :フレンド関連

となっているらしいが、よく分からないのもあります。


たとえば、日記投稿ページのクエリは・・・
?m=pc&a=page_h_diary_add

となっていて、このクエリにより、コントローラーのアクションが決定されます。
次のページから、クエリ(URLの?以降の部分)がどんな動作を起こすか説明します。


日時: 2008年12月15日 10:02
コメントを投稿






トラックバック

■この記事のトラックバックURL:
http://www.mapee.jp/mpe334/mt-tb.cgi/450

この記事にトラックバックされる方は、参照先が分かるようにするために、「OpnePNEの構造やフレームワークとか」へのリンクをお願いいたします。
以下のHTMLタグをトラックバック送信元ページ内に挿入して下さい。



※この記事へのリンクがない、また関連のないページからのトラックバックは反映されませんので、ご了承下さい。






あわせて読みたいブログパーツ
フィードメーター - ウェブライフハック