VaadinとApache Clickはどちらも同じように優れているようですが、Web アプリケーションの開発にはどちらを選択すればよいでしょうか。というか、各フレームワークの長所と短所は何ですか。
7 に答える
私は Apache Click のコミッターですが、私の意見が客観的であることを願っています。
私は Vaadin のことをまったく知りません。彼らの Web サイト、例、およびミッション ステートメントをざっと見ただけです。
Apache Click と Vaadin は、さまざまな問題領域を対象としています。Apache Click は従来のエンタープライズ Web アプリケーションを対象としていますが、Vaadin は Rich Internet Application (RIA) スペースを対象としています。
Apache Click は、伝統的な共有なしのステートレス フレームワークです。従来のアクション ベースの Web フレームワークとは異なり、Click はページとコンポーネントを使用して、わずかに高いレベルの抽象化を提供します。クリックは革命ではありません。これは、Web アプリケーション開発を行うための多くのアプローチの 1 つにすぎません。私の意見では、開発者とメンテナーの両方の観点から、これは非常に優れたアプローチです。(エンタープライズ環境では、開発者とメンテナーは同じ個人ではないことが多いため、2 つの役割を区別しています)。
ただし、開発者は従来の Web アプリケーションでは満たすことができない要件を持っている場合があり、RIA の出番です。RIA はよりリッチなユーザー エクスペリエンス (デスクトップを考えてください) を提供しますが、これは無料ではありません。RIA には、複雑さ、生産性、市場投入までの時間という点でコストがかかります。ただし、要件がよりリッチなエクスペリエンスである場合は、そのエクスペリエンスを提供するためにさらに多くのことを行う必要があります。
ここでの私のアドバイスは次のとおりです。要件について慎重に考えてください。RIA の方が優れていると単純に思い込まないでください。支払うべき代償があります。そのため、投資の見返りを確実に得られるようにしてください。
最後に、要件が RIA の場合は、Vaadin と Flex を比較する必要があります。より伝統的な Web アプリケーションが必要な場合は、Click を Struts、Stripes、Wicket、Tapestry などと比較してください。
敬具
ボブ
両方使ってます(;_;)
Click は、従来の Web アプリケーション (JavaScript を使用しない/小さい/手作りの純粋な HTML) に最適です。これは非常に軽量 (サイズが小さく、ステートレス) で、冗長性が低くなります (速度/フリーマーカー機能を使用して html で html を実行できます ;-)。本当のphpキラー。
Vaadin は、エンタープライズ アプリケーションのようなデスクトップに最適です。これはステートフルで、重量級で、冗長ですが、驚くべきものです。
Grails, Play!, Spring MVC は、Click/Vaadin の真の後退です。
だから私のアドバイス:両方を使用してください!ほとんどのページで Click を使用し、複雑なタスクには Vaadin を使用します。
2006 年から Click を使用しています。この 4 年間、Click を使用してさまざまな Web アプリケーションを構築してきました。すべてのアプリ (B2B) は引き続き強力であり、現在も維持/追加され続けています。Click IMO の優れた点は次のとおりです。
- 魔法はほとんどなく、配管もほとんどありません。それはすべて単純な Java です (そして、jsp/velocity/freemarker で選択できます。または、必要に応じて 3 つすべてを使用します。非常に簡単なので、いくつかのシナリオで使用します)。
- 超高速です (アプリが遅くならないという意味ではありません。クリックが原因でアプリが遅くなることはないということです)。
- お気に入りのJavaライブラリを統合するのはとても簡単です. Ibatis SQLMAP、Spring、displaytag、DWR など。
- それを理解/使用するために本を購入する必要はありません (ただし、使用する予定の他のすべての第 3 部分のライブラリについては本が必要になる場合があります)。
- 4 年前に書いたコードのほとんどは、現在のリリースでも動作します。それはただ素晴らしいです。
- クリックが頭に収まります。フレームワーク全体です。とてもシンプルなので、初心者でもあまり質問する必要はありません。
- クリックを維持する人たちは、非常に反応が良く、とても親切です。
- そのシンプルさは、アプリが新旧の技術に適応するのに役立ちます。つまり、必要に応じて簡単に AJAXy を実行できます。
- フォーム機能により、html フォームの処理が非常に簡単/高速になります。
- テーブル機能により、データの表示が非常に簡単/高速になります
- Click の機能のおかげで、アプリをすばやく作成できます。足場が不要なイモの必要性を作ります。
あなたやあなたのチームが個人的にできる限り速くアプリケーションを構築するのに役立つ、軽量で高速で理解しやすいフレームワークが必要な場合は、クリックをチェックしてください。
選択する前に、テストドライブでそれらを取り出してすべてのオプションを評価する必要があります。
私はClickに精通していないので、間違っている場合は誰かが修正する必要がありますが、Clickは基本的に、サーバー側のコードをWebページにリンクする手法を理解しています。UIはページベースであり、HTML要素に対応するコンポーネントを使用してUIを定義します。Ajaxは(まだ)サポートされていません、私は集めます。
Vaadinは、より高いレベルの抽象化で動作します。Vaadinを使用すると、ビジネスロジックに集中でき、ビュー、レイアウト、その他のコンポーネントを使用してUIを自然に構築できます(サンプラーを確認してください)。RPC、ページ遷移、HTML、またはテンプレートについて気にする必要はありません。Vaadinは、完全にクロスブラウザーに準拠したAjax UIを提供し、箱から出してすぐに見た目も機能も優れています。始めるのはとても簡単で、フォーラムはとても活発です(先月はクリックメーリングリストの96メッセージに対して> 700メッセージ)。
免責事項:私はVaadinチームのメンバーであり、Clickを使用していません。
私は選択し、すでにいくつかのプロジェクトでクリックしました(他のすべてのフレームワークよりも)。
私にとっての主なセールス ポイントは、Click を学び、1 週間で非常に生産的になったことです (Vaadin - しかし、他のフレームワークも私にはもっと時間がかかりました)。Click の無料で入手可能なドキュメントは、はるかに優れています。サイトを自分で比較できます (Vaadin サイトの方がクールに見えますが、Click サイトの方が単純に便利です - 少なくとも私にとってはそうでした)。
実際のサンプルの方がはるかに優れています - 私はいつもそれらをスニペット リポジトリとして見ており、そこから必要なものをコピーするだけです (私は怠惰なプログラマーなので :) ) - 「Page Java」と「Page HTML」のリンクがあります。利用可能なすべての例のソース コードを示すすべての例。
メッセージ トラフィックに関しては、優れた無料のオンライン ドキュメントがあり、フレームワークが非常に単純であるため、ユーザーがそれほど多くを求める必要がないため、それは基準にすべきではないと思います。
免責事項: 私は両方のフレームワークを使用した単純なユーザーです。
Apache wicketもオプションですか ?
私の経験は jboss/ejb/jquery ですが、新しいプロジェクトを開始するためのテクノロジを検討しています。Vaadin は非常によく評価されているようです。
確かにUIフレームワークを比較するならApache Wicketは無視できない存在です。(私も同じことをしています。) ドキュメンテーションが貧弱だったので、Vaadin をやめました (私は良い Googler ではないかもしれません)。
現在、Wicket、Click、および ZK を比較しています。
Click と Wicket は、次の理由でこれまでのところ優位に立っています。
GWT、Vaadin、ZK で発生する JavaScript を使用して UI をレンダリングする代わりに、純粋な HTML を生成します。その後、HTML5 の機能を使用できます。
ネイティブ HTML でも、UI フォームのサーバー側バインディングが可能です。サーバーとの通信について心配する必要はありません。ZK もこれを行いますが、独自の言語 ZUML を使用します。
ZK Grid のようなコンポーネントの場合、サーバー側のメモリ フットプリントが ZK の方が高いことがわかりました。(Click のメモリ フットプリントはまだわかりません。)