2012-02-19 7 views
0

私はTODOのプライベートなWebサイトを開発しようとしています(後ほどWebアプリケーションに拡張されます)。私はどのフレームワークを使用するのか不明です。私はYiiのようなGWTとPHPフレームワークについて読んでいます。それぞれの利点は何か?YiiのようなPHPフレームワーク上でGWTを使用するとどのような利点がありますか

  • うGWTでの開発リファクタリングは、特にあなた以来(PHPでの開発よりも容易になるだろうことを意味:

    背景 - - Javaの での経験が

    疑問がPHPをサポートしているApacheのWebホストを得ましたEclipseを使用することができます)

  • データベースレイアウトを作成したら、YiiデザインオブジェクトなどのPHPフレームワークのようです...これはGWTで行うことができますか?

ありがとう!

+0

PHPはJavaよりはるかに柔軟ですが、コードのあいまいさを犠牲にしています。 –

+1

利点 - PHPを使用/学習する必要はありません。 –

答えて

2

質問/回答/コメントに記載されていない大きな違いの1つは、Yiiはサーバー側のフレームワークであり、GWTはJavaScriptにコンパイルされて実行されるのに対し、クライアントのブラウザでのみ使用できます。これらの2つのオファリング(およびアイデア)は、非常に異なる目的を果たし、一緒に使用できます。

GWTを使用してクライアントを構築する場合、JSベースのクライアントにデータを公開する限り、任意のツールを使用してサーバーを構築できます。これは、JSONやXML、または他のデータエンコーディング(GWTのRPCで構築されたものなど)の形式で行うことができます。複雑なオブジェクトグラフをJavaサーブレットコンテナとの間でやりとりできます。

これらを一緒に使用する場合、Yiiを使用してデータベーススキーマ/レイアウトからPHPオブジェクトを作成し、クライアントがデータを読み書きできるように認証/認可のためのさまざまなルールを作成できます。 GWTを使用して、そのデータを読み込んで更新するクライアントを構築し、Yii/PHPコードで公開されているサービスを呼び出すことができます。

+0

+1は、クライアント側のGWTとサーバ側のPHPを区別します。 – davidethell

+0

aha!それは興味深い!サーバー側とクライアント側を区別することができます。質問:javaサーブレットは、正しいバックエンドで実行されますか? GWTはJavaサーブレットを生成しますか?もしそうなら、GWTはフロントエンドとバックエンドの両方のコードを生成することができますか? – Karan

+0

GWTはJavaサーブレットで動作し、いくつかのサーブレットとともに出荷されますが、クライアント用のコードを生成するだけです。ほとんどのGWTコードはJavaになっているので、一部のコードをサーバーと共有することはできますが、すべてではありません。共有する主要な候補はモデルオブジェクトといくつかの検証の種類ですが、サービスやDB呼び出しなどがサーバーにとって最適ですウィジェットとデータバインディングは、クライアントにとって最適です。オブジェクトをDB呼び出しに変換する作業をカバーするJavaライブラリがありますが、GWTはその1つではありません。別の目的を果たします。 –

2

Eclipseが好きなら、確かにEclipseにとどまり、PHPで開発することができます。 eclipse.orgのPHPツールは非常に優れており、AptanaのIDEプラグインはさらに優れています。

Yii対GWTに関しては、あなたの言語によります。もしあなたがJavaに熟練していて、Java言語のタイピングが本当に好きなら、GWTは良い選択です(ただしTapestryのようなJavaの世界にあなたを残す選択肢は確かです)。 PHPフレームワークは、OOPをどの程度受け入れているか、データベースに基づいてビジネスオブジェクトを作成するなどの概念が非常に大きく異なります。 Yiiは、コード生成機能が組み込まれているため、フレームワークとしては際立っています.POPを使い始める場合は、間違いなく役立ちます。

関連する問題