非常に基本的な GUI を備えた社内ユーザー向けの Java Spring MVC Web アプリを構築します。いくつかは jQuery/Ajax を使用して GUI のリッチさを追加していますが、大きなものはありません。新しいアプリの場合、ビジネス ユーザーは非常にリッチな Web アプリを求めています (例: ドラッグ アンド ドロップ機能、Excel のような柔軟なテーブルなど)。ユーザーは IE8 しか使用できず、ブラウザで Java アプレットを実行することはできません。また、完全に新しい言語 (Flex など) を学習する時間がないため、Java MVC 開発者にとって学習曲線が急勾配になることはありません。このアプリは、社内ユーザー (最大 100 人の同時ユーザー) によってのみ使用されます。
私はいくつかの新しい Javascript MVC フレームワーク (例: Spine、Backbone、Ember) を調べました。私の主な懸念は、結果として得られる複雑な Javascript が IE8 でどれだけうまく動作するか分からないことです。2 つ目の懸念は、Javascript で多くのコードを維持しようとした経験がないことです。多くの Javascript コードがメンテナンスの悪夢になるようです (タイプセーフでない、デバッグが難しい、ツールが少ない、など)。
GWTとZKも調べました。これらのフレームワークは、多くの Javascript コードを維持することに関する懸念を軽減しますが、IE8 のパフォーマンスに関する懸念は依然として残っています。これらのフレームワークの 1 つで非常にリッチな GUI を作成した場合、自動生成された Javascript は IE8 でうまく機能しますか?
上記の高レベルのユーザー要件を満たし、非機能要件 (学習曲線が小さい、メンテナンスの負担が少ない、将来のサポートが良好) も満たす、どのフレームワークをお勧めしますか? 誰かがこれに似たようなことをしようとしましたか? もしそうなら、あなたは何を使いましたか、そしてそれはどのようになりましたか?