BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Unoプラットフォーム3.1がリリース

Unoプラットフォーム3.1がリリース

原文(投稿日:2020/10/31)へのリンク

今月初めにUnoは、.NET開発者のためのマルチプラットフォームUIフレームワークUnoのバージョン3.1をリリースした。注目すべき点はLinuxサポートの拡張と、Skiaベースのバックエンドを使用して構築されていることだ。その他の関連機能としては、新しいコントロール(WinUI TreeViewやTabViewなど)、モバイルアプリケーションでのWinUI Color Pickerのサポート、Prism 8.0テンプレートなどがある。

Uno Platformは、WinUIとUWPアプリのブリッジとして機能することによって、iOSやmacOS、Android、Linux、WebAssembly上でのネイティブな動作を実現する。さまざまなテクノロジ(Xamarin Native Stack、Mono-WASM、Skiaなど、ターゲットプラットフォーム毎に異なる)上に構築されることで、レスポンシブデザインと完全なピクセル管理を備えたシングルソースのC#およびXAMLアプリケーションの開発を可能にする。

新リリースでは、新たにSkiaレンダリングバックエンドを使ったLinuxアプリケーションのサポートが導入された。Skiaは、複数のハードウェアおよびソフトウェアプラットフォーム上で標準APIを提供するオープンソースの2Dグラフィックライブラリで、Google ChromeとChrome OS、Android、Flutter、Mozilla Firefox、Firefox OSのグラフィックエンジンとして使用されている。

Linuxアプリケーションのサポートは今年初めのUnoConf 2020発表されて以来、多くから望まれていた機能だった。数週間前、Unoはショーケースとして、オープンソースのWindows CalculatorのLinux移植版をリリースしている。新しいレンダリングバックエンドではSkiaSharp(SkiaをベースとしたMonoのAPI)とGtkSharp(Gtkおよび関連コンポーネントのC#ラッパ)も、それぞれWindows(7および10)とmacOSをターゲットとして使用されている。

新たに追加されたWinUI TreeViewおよびTabViewコントロールも、今回のリリースの重要な部分だ。このリリースには、TreeView(全プラットフォーム対象)とTreeView(SkiaおよびWASMのみ)がDarkモードとLightモードに含まれている。新コントロールの動作する様子は、こちらの短編ビデオで見ることができる。

その他の新機能としては、モバイルアプリケーション(iOS/Android)でのWinUI ColorPickerのサポートと、Prism 8.0テンプレートがある。Prismは疎結合XAMLアプリケーション構築用のフレームワークで、その最新リリースにはサポート対象プラットフォームとしてUno Platformが公式に含まれている。Uno Platform 3.1には多数のバグフィックスや修正も含まれている。Windows.Globalization.Calendarのアップデート(Date and Time Picker対応の準備)、macOSでのFolderPickerのサポート、WebAssemblyでのVoiceOverのサポートなどがその例だ。

今回のリリースは2020年内におけるUno Platformの6回目のリリースとなっており、その開発速度の速さを伺わせる。さらに、選択したテクノロジスタックによって、数週間以内に予定されている.NET 5のアーリーアダプタが使用する上でも有利なポジションにある(Xamarin Nativeは.NET 5/.NET 6に、Mono-WASMも.NET 5に、それぞれ含まれる予定である)。FluentおよびMaterialデザインシステムの使用もサポートされている。今年リリースされたすべての新機能と、.NET 5が間もなく登場することで、2021年に何が提供されるかが楽しみだ。

Uno Platformはオープンソース(Apache 2.0)で、GitHub上で公開されている。Visual Studio Code、Visual Studio for Windows (16.3およびそれ以降)、Visual Studio for Mac、JetBrains Rider(2020.2およびそれ以降)で使用可能だ。使用するIDEがいずれであっても、Uno Platform 3.1では.NET Core 3.1 SDKが必要である。

この記事に星をつける

おすすめ度
スタイル

BT