19

Apache Wicket と Apache Click の違いは何ですか? Apache Click はメンテナンスされていますか? 最新のリリースは 2008 年 11 月のようです ありがとう Achilleas

4

4 に答える 4

41

Click は活発に開発されており、最近 Apache トップ レベル プロジェクトとして卒業しました。現在、http: //click.apache.orgの新しいドメインに移行中です。移行が完了すると、次のバージョンである 2.1.0 がリリースされます。

Click と Wicket を比較する前に、私は Apache Click のコミッターですが、数年前に Wicket を評価したので、それがどのように機能するかについてかなり良い考えを持っていることに注意してください。

Click はステートレス フレームワークですが、Wicket はステートフルです。Click では、ページとコンポーネントがリクエストごとに再作成されます。Wicket では、ページとコンポーネントがセッションに保存され、後続のリクエストで再利用されます。

Wicket は複雑なアプリケーション (デスクトップを考えてください) を構築するためのもので、すべての GUI 状態が保存され、管理されます。クリックは、ページをレンダリングするために状態がほとんどまたはまったく必要ない、より伝統的な Web アプリケーションを対象としています。状態を保存する必要がある場合は、セッションに追加/削除して自分で管理する必要があります。Wicket はステートレス ページのサポートを提供し、Click はステートフル ページをサポートすることに言及する価値がありますが、これはこれらのフレームワークの標準ではありません。

もう 1 つの違いは、Click コントロールは自分自身をレンダリングする方法を認識しているため、ページ テンプレートでマークアップを繰り返す必要がないことです。必要に応じてテンプレートを手動でレイアウトすることもできますが、厳密には必要ではありません。Wicket では、マークアップはページで作成されたコンポーネントを反映する必要があります。Wicket の考え方は、Java 開発者が実際にテンプレートを作成または維持するのではなく、デザイナーが処理するというものです。

敬具

ボブ

于 2010-02-01T10:32:25.027 に答える
2

wicketを使用すると、クリックのように速度やjspのように、純粋なhtmlを使用し、テンプレート言語を使用しません。これは、htmlとjavaを学習するだけでよいプログラマー自身だけでなく、ツール(デバッグなど)にも便利です。

これにより、ユーザーインターフェイスとロジックがより適切に分離されます。クリックするのとは異なるウィケットにはxmlも必要ありません。

さらにいくつかの違い:ウィケットのメーリングリストのトラフィックが多い。改札については、クリックしてからさらに多くの出版物(本など)があります。改札をコーディングしている開発者がもっといます(これこれを見てください)

于 2010-02-10T10:15:54.180 に答える
2

Wicket では、ページの構成方法がより柔軟になります。アプリケーション全体のコンポーネントで構成される 1 つのページを作成することも、必要に応じて複数のページを作成することもできます。クリックはページベースです。Wicket は、すぐに使用できる ajax をサポートしています。ブラウザが ajax をサポートしていない場合、wicket のほとんどの ajax コンポーネントは通常のページ更新に戻ります。Wicket には、すぐに使用できる数十のコンポーネントと、関連するプロジェクトからの数十のコンポーネントがあります。私が wicket で見つけた素晴らしい機能の 1 つは、その冗長性です。つまり、私のアプリケーションが行うことはすべて、私が作成したものです。プレゼンテーション全体を html と css で作成し、何も生成しません。魔法がないことは、経験から私にとって大きなプラスです。最後に、多くの大企業がウィケットを使用しています。Walmat mobile と wellsfargo mobile は改札で済みます。

于 2010-09-22T15:13:38.883 に答える
1

ウィケットの最大の欠点は、そのステートフルな性質です。状態の問題を単体テストしてデバッグするのは難しい場合があります。そのステートフルな性質は、より多くのメモリを使用することを意味し、ハードウェアの予算に影響を与える可能性があります。wicket のステートフルな性質の副作用は、時々その状態を保存できる必要があることを意味します。そのためには、すべてのオブジェクトがシリアライズ可能である必要があります。

私はちょうどクリックを見始めました。私はそのステートレスな性質が大好きです。Web は要求/応答であり、ステートレスにする必要があります (少なくとも可能な限り)。

また、クリックが apache cayanne とうまく統合されていることも気に入っています。

于 2010-10-27T18:49:01.393 に答える