Locked History Actions

vaadin

vaadin

参考

概要

vaadinは簡単に言えば、ブラウザをダム端末として扱う仕組みである。 これは、VNCが単にリモートのコンピュータ上のデスクトップ上でのプログラム実行を表示する(あるいは、ユーザ入力をそこに送り込む)だけのダム端末であるのに似ている。

。。。と思ったが、実は違うようだ。vaadinで作成されたアプリを調べてみると、vaadinのグリッドはtableタグで構成されているなど、各vaadinコンポーネントはブラウザ上で適切な要素で表現されているものと思われる。

ただし、「Javaによるユーザプログラムはサーバサイドで実行される」ということで、これはつまり、コンポーネントの表現変更(CSS変更等)やイベント処理はサーバサイドで行われ、それがクライアントに伝えられる仕組みになっているらしい。これがゆえに、タイトなネットワーク環境ではvaadinの実行は遅くなるものと思われる。

GWTとの関係

上記本家リンクのFAQにGWTとの関係が記述されている。

What is the relation of Vaadin and GWT? Can I use Vaadin without GWT?

The browser side rendering engine of Vaadin is implemented using GWT. At runtime there are no GWT dependencies in the server side, and the browser side is pure Javascript with no dependencies to Google. The javascript code shipping with Vaadin is precompiled, and no GWT compilation is required when using them. Generally you don't need to know anything about GWT or how the browser side works unless you want to create a new component that can not be built as a composition of existing ones. If you wish to extend your app with browser side code you need to write the extensions in pure Java against the GWT API, and compile them to Javascript using the GWT compiler. This is automated very well with our Eclipse plugin or Maven support.

vaadinのブラウザ側エンジンはGWTコンパイラを使って作成されているし、新たなコンポーネントを作成する際にや、GWTのAPIを使いたい場合にはGWTが必要になるが、しかしそれ以外の場合はGWTは不要であるとのこと。つまり、vaadinに備わるコンポーネントを使ってアプリを作成する場合は、GWTは一切関係無いということのようである。

参考