Vaadin Flow で実装された Web アプリケーション | |
| 開発者 | ヴァーディン株式会社 |
|---|---|
| 安定版リリース | 24.6.0 (2024年12月18日[1] ) [±] 23.5.14 (エバーグリーン、商用サポート) (2024年12月18日[2] ) [±] |
| リポジトリ | Vaadin リポジトリ |
| 書かれた | Java、JavaScript |
| プラットフォーム | クロスプラットフォーム |
| タイプ | ウェブフレームワーク |
| ライセンス | Apache ライセンス2.0 |
| Webサイト | vaadin.com |
Vaadin (フィンランド語の発音: [ˈʋɑːdin] ) は、Java用のオープンソース Web アプリケーション開発プラットフォームです。Vaadin には、 Web コンポーネントのセット、Java Web フレームワーク、開発者がJava プログラミング言語のみ (HTML と JavaScript の代わりに)、TypeScriptのみ、またはその両方の組み合わせを使用して最新の Webグラフィカル ユーザー インターフェイス(GUI)を実装できるようにするツールのセットが含まれています。
歴史
開発は、2002 年にリリースされたオープンソースWeb フレームワークMillstone 3 のアダプターとして最初に開始されました。このフレームワークでは、 Ajaxベースのクライアント通信およびレンダリング エンジンが導入されました。2006 年に、このコンセプトは商用製品として個別に開発されました。その結果、Vaadin のサーバー側 APIの大部分は、Millstone のSwing のようなAPIと互換性があります。
2007 年初頭に製品名がIT Mill Toolkitに変更され、バージョン 4 がリリースされました。クライアント側のレンダリングには独自のJavaScript Ajax 実装が使用されていたため、新しいウィジェットの実装がかなり複雑でした。2007 年末までに、独自のクライアント側実装は廃止され、サーバー側コンポーネントの上にGWTが統合されました。同時に、製品ライセンスはオープン ソースのApache License 2.0に変更されました。IT Mill Toolkit 5 の最初の製品リリースは、1 年を超えるベータ期間を経て、2009 年 3 月 4 日に行われました。
2008年9月11日、 MySQLのオリジナル版の主要作者であるMichael WideniusがVaadinのフィンランドの開発会社IT Millに投資したことが公表されました[4] [5] 。 [6]投資額は非公開です。
2009 年 5 月 20 日、IT Mill Toolkit は Vaadin Framework に名前を変更しました。この名前は、フィンランド語で「雌のトナカイ」を意味する単語に由来しています。フィンランド語では「私は主張する」とも訳されます。名前の変更に加えて、バージョン 6 のプレリリースとコミュニティ Web サイトが立ち上げられました。その後、オープン ソースの Vaadin Framework を開発している IT Mill Ltd が Vaadin Ltd に名前を変更しました。
2010年3月30日、Vaadin Directoryがオープンしました。これにより、コアVaadinフレームワークへのアドオンコンポーネントを無料または商用で配布するためのチャネルが追加されました。開始日には、すでに95のアドオンがダウンロード可能でした。[7]
Vaadin Flow (Java API)
Vaadin Flow (旧称Vaadin Framework ) は、 Web アプリケーションやWeb サイトを構築するための Java Web フレームワークです。Vaadin Flow のプログラミング モデルにより、開発者はHTML や JavaScript を直接使用せずに、 Java をプログラミング言語として使用してユーザー インターフェイス (UI) を実装できます。Vaadin Flow はサーバー側アーキテクチャを採用しており、UI ロジックのほとんどがサーバー上で安全に実行されるため、攻撃者への露出が軽減されます。クライアント側では、Vaadin Flow はWeb コンポーネント標準に基づいて構築されています。クライアント/サーバー通信は、ブラウザーの UI とサーバーの UI 状態の両方を更新する軽量のJSONメッセージを使用して、 WebSocketまたはHTTP経由で自動的に処理されます。
TextFieldVaadin Flow の Java API には、、、、Buttonなど
のクラスが含まれており、これらを設定、スタイル設定し、レイアウト オブジェクトに追加できます。これらのクラスは、、、、などのクラスのインスタンスです。動作はComboBox、クリック、入力値の変更などのイベントにリスナーを追加することで実装されます。ビューは、別の UI コンポーネント (カスタムまたはフレームワークによって提供される) を実装するカスタム Java クラスによって作成されます。このビュー クラスには、特定の URL を使用してブラウザに公開するために、 という注釈が付けられます。次の例は、これらの概念を示しています。GridVerticalLayoutHorizontalLayoutSplitLayout@Route
@Route ( "hello-world" ) // http://localhost:8080/hello-world を通じてビューを公開しますpublic class MainView extends VerticalLayout { // 既存の UI コンポーネントを拡張します
public MainView () { // テキスト フィールドを作成しますTextField textField = new TextField ( "名前を入力してください" );
// ボタンを作成します
Button button = new Button ( "Send" ); // クリック イベントを使用してボタンに動作を追加しますbutton . addClickListener ( event -> add ( new Paragraph ( "Hello, " + textField . getValue ())) );
// ビューに UI コンポーネントを追加します (VerticalLayout)
add ( textField 、button ); } }
以下は前の例のスクリーンショットです。

Hilla (TypeScript API)
Hilla(旧称Vaadin Fusion)は、Spring Boot Java バックエンドとTypeScriptで実装されたリアクティブ フロントエンドを統合する Web フレームワークです。この組み合わせにより、Java のサーバー側ビジネス ロジックとクライアント側のタイプ セーフを TypeScript プログラミング言語と組み合わせることで、完全にタイプ セーフな開発プラットフォームが実現します。ビューは、 Web コンポーネントを作成するための軽量ライブラリである Lit を使用して実装されます。以下は、Hilla で実装された基本的なビューの例です。
@customElement ( 'hello-world-view' )
エクスポートクラスHelloWorldView はLitElementを拡張します{レンダリング() { return html ` <div> <vaadin-text-field label="Your name"></vaadin-text-field> <vaadin-button @click=" ${ this . sayHello } ">Say hello</vaadin-button> </div> ` ; }
sayHello () { showNotification ( 'Hello!' ); } }
VaadinのUIコンポーネント
Vaadin には、 Web コンポーネントとして実装された一連のユーザー インターフェイス (UI) コンポーネントが含まれています。これらのコンポーネントにはサーバー側 Java API (Vaadin Flow) が含まれていますが、HTML ドキュメントで直接使用することもできます。Vaadin の UI コンポーネントは、マウス イベントとタッチ イベントで動作し、CSS でカスタマイズでき、WAI-ARIAと互換性があり、キーボードとスクリーン リーダーをサポートし、右から左に記述する言語をサポートしています。
次の表は、Vaadin に含まれる UI コンポーネントの一覧を示しています。
認定資格
Vaadinは、開発者がVaadin Flowに精通していることを証明するために2つの認定コースを提供しています。[13]
- 認定 Vaadin 14 開発者
- 認定Vaadin 14プロフェッショナル
認定に合格するには、開発者はドキュメントを読み、トレーニング ビデオに従い、オンライン テストを受ける必要があります。
以前の(現在は利用できない)認定には以下が含まれます。
- Vaadin 7 認定開発者向け Vaadin オンライン試験
- Vaadin 8 認定開発者向け Vaadin オンライン試験
参照
参考文献
- ^ 「リリース Vaadin 24.6.0 · vaadin/platform · GitHub」。GitHub 。2024年 12 月 18 日閲覧。
- ^ 「リリース Vaadin 23.5.14 · vaadin/platform · GitHub」。GitHub 。2024年 12 月 18 日閲覧。
- ^ 「リリース Vaadin 14.11.11 · vaadin/platform · GitHub」。GitHub 。2024年6月3日閲覧。
- ^ 「Michael "Monty" Widenius がフィンランドの IT Mill に投資」。Invest in Finland。2011 年 7 月 20 日時点のオリジナルよりアーカイブ。2009年 1 月 31 日閲覧。
- ^ Asay, Matt. 「Monty Widenius が Act II: IT Mill に投資」CNET ニュース。 2016 年 3 月 11 日時点のオリジナルよりアーカイブ。2009 年 1 月 31 日閲覧。
- ^ サニ、イラリ (2009 年 3 月 10 日)。 「IT工場、アヴォインタ・アジャクシア・スオメスタ」。ティビ (フィンランド語)。アルマメディア。2024 年7 月 11 日に取得。
- ^ 「Vaadin Directoryがオープン」。vaadin.com 。 2021年9月7日閲覧。
- ^ ヴァーディン。 「Vaadin が Vaadin Framework 8 をリリース」。www.prnewswire.com (プレスリリース)。
- ^ Vaadin. 「Vaadin がこれまでで最大のリリース Vaadin 10 で Java 開発を近代化」www.businessinsider.com。
- ^ 「Vaadin 14.0.0 が GitHub でリリースされました」。GitHub。
- ^ 「よりシンプルなリリースモデル | Vaadin」。vaadin.com 。 2022年8月11日閲覧。
- ^ 「Vaadin 23がついに登場! | Vaadin」。vaadin.com 。 2022年8月11日閲覧。
- ^ 「トレーニング」。Vaadin 。2021年9月8日閲覧。
さらに読む
- Duarte, A. (2021) 実践Vaadin: JavaでのWebアプリケーション開発。Apress。
- Duarte, A. (2018) Vaadin 8 を使用したデータ中心のアプリケーション。Packt Publishing。
- Frankel, N. (2013) Learning Vaadin 7、第2版。Packt Publishing。
- Duarte, A. (2013) Vaadin 7 UI Design by Example: 初心者向けガイド. Packt Publishing.
- Holan, J.、Kvasnovsky, O. (2013) Vaadin 7 Cookbook。パックト出版。
- Taylor C. (2012) Vaadin Recipes . Packt Publishing.
- Frankel, N. (2011) Learning Vaadin . Packt Publishing.
- グロンルース、M. (2010)ヴァーディンの本。ヴァーディン株式会社
外部リンク
- 公式サイト
- GitHub の Vaadin
