Vaadinは、Java開発者向けの新しいWebフレームワークのHillaを発表した。これは、Spring Bootを使ったバックエンドと、TypeScriptとLitの混合のフロントエンドとを組み合わせたものである。
以前はVaadin Fusionとして知られていたHillaは、ビジネスアプリケーション開発をシンプルにするための多くの機能を提供している。例えば、JavaとTypeScript向けの統合プロジェクトセットアップがあり、JavaとTypeScriptの間で同期された状態が保たれる。UIコンポーネントの包括的な集合がある。例えば、Vaadinコンポーネントである。また、アプリケーションを保護するためのSpring Securityを含むシングルページアプリケーションもサポートする。
Hillaには、ルーティング、フォーム、セキュリティ、ビルドツールなど、Webアプリケーションに必要なすべてのアーティファクトが含まれている。さらに、フレームワークでは、フロントエンドとフロントエンドの同期を維持するために、自動でTypeScriptコードが生成される。たとえば、開発者がSpring Bootで次のエンドポイントを作成すると、2つのアイテムがリンクされる。
開発者コードのJava | Hillaが自動的にTypeScriptを生成 |
|
|
HillaにはNodeバージョン16.14以降とJDK11以降が必要である。手順はスタートガイドに記載されている。
HillaはVaadinによって作成・保守されているが、Vaadin Flowは含まれていない。代わりに、ネイティブWebコンポーネントを構築するために、ReactJsに似た軽量ライブラリのLitが使われる。これに加えて、Hillaでは同じプロジェクトにフロントエンドとバックエンドの両方が含まれる。これに関して、Vaadinの製品管理リーダーであるLeif Åstrand氏は、次のように述べている。
フロントエンドとバックエンドを分離するという従来の常識と違い、サーバ側のJavaとクライアント側のTypeScriptを互いに近づけることをベースに最適化する機会を探しています。
Hillaフレームワークは現在、Spring Bootのみをサポートしている。QuarkusやJakarta EEなどの他のフレームワークのサポートは、まだロードマップに含まれていない。Spring Bootについて、Åstrandは次のように続けている。
現在、Spring Bootは、Javaエコシステムのほとんどの部分を、慣例に基づいて機能させる方法でまとめており、個別の設定が必要最小限となるようにしています。
Hillaの最初のメジャーリリースはJavaをサポートしているが、Vaadinのウェビナーでは、Kotlinなどの他のJVM言語が将来含まれる可能性があると説明している。さらに、現在Apache 2.0ライセンス下のオープンソースプロジェクトであるため、誰でもソースコードを閲覧、拡張、変更し、問題を報告することができる。
Hillaを評価したい開発者は、ドキュメント、ウェビナー、Spring Tipsブログ投稿といった、Vaadinの初期の資料を利用できる。ソースコードはGitHubにある。