52

「GWT」と「Vaadin」のどちらがアプリケーションを設計するのに適しているか、誰か提案できますか? また、コーディングスタイルの違いは何ですか?

4

10 に答える 10

61

GWTでは、アプリケーションロジックは通常クライアント側で実行されます。一部のデータの読み取り/保存が必要な場合にのみサーバーを呼び出します。

Vaadinでは、アプリケーションロジックはサーバー側にあります。クライアント側は通常、ユーザーが操作するたびにサーバーを呼び出す必要があります。

GWTの利点:
アプリロジック(ユーザーインタラクションへの応答)は、ブラウザーでローカルに実行されるため、より高速です。また、ネットワークの状態が悪い場合にも比較的影響を受けません。ネットワークは、必要な場合にのみ使用され(新しいデータの読み取り/保存)、ネットトラフィックを節約します(トラフィックの多いサイトにとって重要)。

この点で、Vaadinは低速であり、UIの操作に遅れが生じ、ユーザーに迷惑をかけます。ネットワークに問題がある場合、これはUIの応答性に表示されます。

Vaadinの利点:
アプリロジックはサーバー上で実行されるため、ユーザーが検査することはできません。間違いなく(Vaadinは)それをより安全にします。

于 2010-11-11T15:35:06.743 に答える
35

さらにいくつかのポイント:

  • 基本的な違いは、GWT ではアプリケーションをクライアント コードとサーバー コードに分離する必要があることですが、Vaadin ではそのような区別はありません。これは、アプリケーションのアーキテクチャに影響します。

  • GWT クライアント コードでは、Java でコーディングする必要があり、使用できる言語機能のサブセットは限られています (GWT コンパイラが Javascript に変換できる)。Vaadin では、すべてがサーバーで実行されるため、任意の JVM 言語でコーディングできます (私は Scala で Vaadin を使用しています)。これはあなたに関係があるかもしれませんし、関係がないかもしれません。

  • 開発モードではエミュレーターがありますが、GWT のコンパイルは非常に遅いです。これにより、実稼働環境の更新が苦痛になります (私が開発した GWT アプリケーションはかなり大きくなり、現在コンパイルに約 15 分かかります)。

  • サードパーティのウィジェットで GWT を拡張したり、独自のウィジェットを展開したりするのは非常に簡単です。新しい Vaadin ウィジェットの作成はより複雑です。

于 2012-01-09T17:37:03.740 に答える
18

Vaadinのもう1つの利点は、組み込みのクライアント/サーバー通信を設計または実装する必要がないことです。

于 2010-11-12T10:04:52.457 に答える
8

Vaadin と GWT の違い:

A) Vaadin には、次のようなサーバー側の開発モデルが含まれています。

  • ユーザー インターフェイスに実装する必要があるレイヤーを減らすことで、コード行数を半分に削減します。
  • ユーザー インターフェイスに任意の JVM ベースの言語を使用できます - Scala、Groovy
  • ユーザー インターフェイス ロジックをサーバーに保持することで、セキュリティを強化します。
  • Web サーバーから任意のバックエンド API への同期呼び出しを許可します
  • サーバー側アーキテクチャ アプリケーションの UI レイヤー用の標準 Java ライブラリとツールを使用できます。
  • Java から JavaScript へのコンパイル手順は必要ありません。GWT プロジェクトでは時間がかかり、ツールが複雑になることがよくあります。代わりに、Vaadin クライアント エンジンを使用できます。
  • 追加のコードを必要とせずに、すぐに使用できるサーバー プッシュを提供します

B) Vaadin は、高レベルのユーザー インターフェース コンポーネントの大規模なセットを提供します。GWT の場合、同等のコンポーネント セットに市販の Sencha GXT を使用する必要があります。

C) Vaadin には SASS ベースの Valo テーマ エンジンが含まれており、アプリケーションから見栄えの良いカスタム テーマを簡単に構築できます。Valo は Vaadin の最新のテーマです。

D) データ バインディング: Vaadin には、任意のウィジェットをデータベース、ファイル、またはサーバー側のその他のものなどのデータ ソースに直接関連付ける機能が組み込まれています。これにより、データ ソースに作用するウィジェットのデフォルトの動作を定義できます。

Vaadin vs GWT

于 2016-03-31T09:52:00.613 に答える
8

Vaadin を使用すると、クライアント側で何かをしたいときに組み込みの GWT を使用することもできます。これにより、サーバー側のプログラミング モデルが単純になり (通信やブラウザー プログラミングは不要)、ブラウザーで何が起こるかを完全に制御できます。

于 2012-01-06T23:30:53.393 に答える
5

Vaadin は試していません。私は GWT のファンですが、GWT で提供されるデフォルトのウィジェット セットには少しがっかりしたと言えます。フレームワークを埋めるには、SmartGWTのようなものが本当に必要です。

于 2010-11-11T15:11:04.137 に答える
4

Vaadin は GWT よりもはるかに高度なフレームワークであると思いますが、クライアント側でパフォーマンスを最適化することになると、独自のコンポーネントを構築しない限り、できることは何もありません (Vaadin の美しさはそこで止まります)。私は今働いています 私が行ったスタッフの 90% はチャームとして働いていました そして、いくつかのテーブルの横にあるイベント タイムラインを使用しなければなりませんでした。タイムラインに 400 以上のイベントをロードしたとき、私の Web ページはほとんど使用できませんでした。この 2 か月間、コードの最適化を試みてきました。最後に、GWT コンポーネントを使用しました。

于 2015-10-08T20:08:58.943 に答える
2

どのアプリケーションもサーバーからの表示情報を表示する必要があるため、単純なコーディングの主な要件は、フォームとテーブルへの自動データ バインドです。Vaadin を使用すると、これは数行のコードと同じくらい簡単です。GWT では、まずテーブル マッピングがありません。フォームに関しては、オブジェクトをフォームにマップできますが、そのためには、オブジェクト (およびその中のすべてのオブジェクト) に対して、いわゆる GWT エディターを実装する必要があります。エディタは、オブジェクトの表示/変更に使用するフォームの定義に他なりません。全体として、ここには自動化はありません。

于 2012-06-21T13:11:04.073 に答える