2011-01-02 4 views
8

PHP GUIライブラリのいずれかの抽象化フレームワークがあるかどうかは疑問です。我々はPHP-GTKPHP/Tkのインターフェースを持っていて、一見、PHP-QTもあります。 (試してみません)PHPでの実際のMVCライブラリ(GUIアプリケーション用)

私は、Pythonの生のGtk +インターフェースに対する書き込みは単なる保証に過ぎないことを知っています。したがって、PHPにとって魅力的ではないようです。私はそれがQtと同じであると仮定し、Tkもかなり低いレベルです。だから私は3つのいずれかの上により良いオブジェクト構造を提供するものを探しています。主にTreeViewsは常に雑用であり、php-gtkコールバックはPHPで奇妙なので、私はそれを単純化したいと思います。あまり制御コードなしでビジネスロジックの上にGUI/Viewを追加するのが容易になると、それはすでに助けているかもしれません。

GUIアプリケーションはMVCまたはMVPが実際に意味をなされる領域なので、そのライブラリが存在するかどうかを知りたいと思います。

まだ回答がありません。
(おそらく二バウンティラウンドがあります。それは珍しい話題ですので、より多くの研究が必要である。)

+3

GUI PHPアプリケーション用のMVCライブラリは見られませんでしたが、おそらく主にかなり珍しい品種ですが興味深い質問です。 –

+0

ExtJSやDojo、さらにはXULなどのJSベースのRIAフレームワークをサポートしているのが理想的です。理想的なのはパイプラインです。 – Gordon

+0

これは興味深いもので、PHPの比較的新しい方向性です.NetとJavaとの競争力を高めるために、私はそれが動いていることを確認したいと思います。私は正式にこれらのラインに沿ったオープンソースプロジェクトに貢献することを提案しています。この質問の結果としてあなたが始めるなら、私に警告してください。 – DampeS8N

答えて

0

http://phpketchup.isgreat.org/PHPKetchupは計画段階の新しいプロジェクトです。現在利用可能なコードはありません(オープンソースではなく商用のものもありそうです)。 PHP-GTKのフレームワークとして発表されました。 conception documentがあり、MVCフレームワークを設計することを明示的に示しています。

しかし、彼らはCodeIgniterと主に共通のPHPフレームワーク構造からインスピレーションを得ているようです。フォーカスは、PHP-GTKをアプリケーションロジックと統合することにあるとは思われませんが、ほとんどの場合、データベースインターフェイスをモデルとして提供し、ビュー用のシンGtkインターフェイスを提供します。

MVCアーキテクチャ:
私たちは、PHP-GTKフレームワークのモデル - ビュー - コントローラ(MVC)アーキテクチャを設計し、実装します。 SQLiteはModelに使用されます。 PHP-GTK関数とGladeファイルは、HTML、CSS、Javascriptの削除後にViewに統合されます。コントローラーは、新しく作成されたビューで動作するように変更されます。

だから、それだけで名前と組織にMVCかもしれないが、図の1は言及し「PHP-GTKは、追加の機能」とオブジェクト構造のGtkヘルパーの更なるヒントがあります。

1

あなたはWinBinderを試みたことがありますか?正確にはMVC関連ではありませんが、PHPでGUIベースのプログラムを作成するための非常に優れた拡張機能です。

+0

それはWindowsのみであるため、私には役に立たないので考慮しません。コールバックAPIはphp-gtkよりも少し不器用です。しかしそれは関連しているので、ここでこのヒントを残しましょう。誰かが他のGUIツールキットよりも役に立つと思うかもしれません。 – mario

2

[答えはありません。ちょうどそれが関連しているだけで解決策ではないので、質問からこれを削除したかっただけです。]

PHP interface preprocessorがあります。しかし、それは非常に単純で低レベルです。それは、ncursesだけでなく、Gtkの出力インターフェイスを提供するだけでなく、PDFまたはXHTMLシリアル化を提供します。興味深いのはコントローラを適合させることなく、異なるバックエンドに対してビューを交換できるようにするための実際のMVC構造に近いからです。しかし、それは基本的なウィジェットを提供するだけであり、単純化の多くはありません。したがって私はそれを私の元の質問に関連して考えるだけです。サイドノート。

0

OotBを使用する準備が整っているようなものが見つかることは本当に疑問です。 PHP GUIプログラミングは数年前に完全に失敗しました。

しかし、あなたができることは、まともなMVCと別の言語のインターフェイスを作るために何らかの種類のブリッジを使用することです。どのPHPあなた次の選択肢があります。

+0

Swig/BoostはおそらくGtk、Tk、Qtバインディングの基礎になっていました。 Javaブリッジはやや複雑(そして複雑)ですが、さらなる研究のための興味深い手段です。そしてQuercusやProjectZeroも意味をなさないでしょう。最終的に私はPython IPCブリッジを好むでしょう。 – mario

+0

Pythonに切り替える場合は、実際にはたくさんの選択肢があります。非常に人気のあるwxWidgetsを含みます。 – vartec

+0

QuercusとProjectZeroについては、ZendのPHPと100%互換性はありません。 – vartec

関連する問題