NTTレゾナントテクノロジーがKotlin・Javaで実現する「WinUI4K」
NTTレゾナントテクノロジー株式会社が、画期的なオープンソースソフトウェア(OSS)ライブラリ「WinUI4K」を発表しました。このライブラリは、プログラミング言語KotlinおよびJavaを使用して、Microsoftが推進するWindowsの最新GUIフレームワーク「WinUI」を直接利用することができます。Apache License 2.0のもと、無償で使用可能です。
WinUIとは?
WinUIは、Windows 11の標準GUIフレームワークであり、Fluent Designに基づいた現代的な見た目を持つコントロール(ボタンやメニューなど)を提供します。これにより、魅力的で直感的なユーザーインターフェースを構築することが可能です。このWinUIを活用することで、デスクトップアプリケーションがよりユーザーフレンドリーに進化することが期待されています。
WinUI4Kの特長
WinUI4Kは、C#やVisual Studio、さらにはブリッジDLLを必要とせず、KotlinまたはJavaだけでWindowsネイティブのアプリを開発できるのが大きな魅力です。これにより、JavaやKotlinに堪能な開発者が既存の資産を活かしつつ、WindowsネイティブUIにアクセスできるようになります。
機能の概要
- - 簡単に始められる: 必要な環境はJDK(Java Development Kit)だけで、Visual Studioや.NET SDKは不要です。手元にJDKがあれば、すぐに開発を始められます。
- - GUIコントロール: 60種類以上のWinUIコントロール(GUI部品)を提供し、使い慣れたSwingやJavaFXの知識を流用しやすい設計です。
- - FFIを活用: JVMが持つ外部関数呼び出し機能(FFI)を駆使してWindowsの内部API(WinRT ABI)に直接アクセスします。
いかにして言語の壁を取り除いたのか
従来、Windowsデスクトップアプリ開発においては、C#やC++が主流であり、業務システムで使われているJavaやKotlinにとっては扱いが難しい状況にありました。WinUI4Kはこの状況を打破するために設計され、開発者がJavaやKotlinの知識をそのまま生かしてWindowsネイティブUIを利用できるようにしました。
開発者の久納孝治氏は、「WinUI4Kは、従来の手法に依存することなくKotlinとJavaを駆使して本物のWindowsネイティブUIを構築できることを目指しました。これによって、ユーザーが持つ既存のリソースやノウハウを損なうことなく、最新の技術を活用する道を開きました」と語っています。
利用シーンと今後の展開
WinUI4KはSwingやJavaFXで開発したアプリを新しい見た目にリフレッシュしたり、新規作成する際にJavaやKotlinを使いたい開発者には特に有用です。さらに、今後はGUIコントロールの追加やWinUIの進化に追随し続け、使いやすさを高めていく予定です。
開発者によるサポート
NTTレゾナントテクノロジーは、ユーザーからの不具合報告や機能要望をGitHubのIssueで受け付けています。また、日本語でのサポートやドキュメント整備にも力を入れ、国内の開発現場で使いやすいOSSを目指しています。
まとめ
NTTレゾナントテクノロジーのWinUI4Kは、KotlinやJavaを使ってWindowsネイティブUIを手軽に実現する画期的なライブラリです。デスクトップアプリ開発の新たな可能性が広がる中、ぜひ一度試してみてください。
リポジトリURL:
WinUI4K GitHub