Windows には、WinUI、デスクトップ用 React Native、WPF、C++、C#、.NET、さまざまなクロスプラットフォーム フレームワークなど、アプリを構築するためのさまざまな言語、フレームワーク、ツールが用意されています。 ここでは、どのオプションが最適かを判断するのに役立つ情報を提供します。
WinUI
見栄えが良く、最新の Windows リリースを活用するアプリを作成するには、WinUI と Windows アプリ SDK の使用をお勧めします。 Windows 開発が初めての場合や、新しい Windows アプリで作業を開始する場合、WinUI には、優れた Windows 11 用アプリを作成するために必要なリソースが用意されています。
WinUI は、Windows アプリを構築するための最新のコントロールとスタイルを含が含まれている、XAML マークアップベースのユーザー インターフェイス レイヤーです。 Windows アプリ SDKのネイティブ UI レイヤーとして、Fluent Design を具体化し、各 Windows アプリに、お客様が期待する洗練された操作感を与えます。
Windows アプリ SDK は、Windows アプリ開発プラットフォームの最新の進化ともいえる、新しい開発者向けコンポーネントとツールのセットです。 Windows アプリ SDK で提供される API とツールの統合セットは、Windows 11 から Windows 10 バージョン 1809 までのデスクトップ アプリで、一貫した方法で使用できます。
WinUI はネイティブ UI レイヤーですが、WPF、WinForms、または Win32 アプリで Windows アプリ SDK を使用できます。 これまでに Windows 用アプリを開発したことはあるものの、既存のアプリで Windows アプリ SDK を使い始めることを検討している場合は、フレームワーク固有のガイドを参照してください。
デスクトップ用 React Native
React Native は、クロスプラットフォーム アプリの作成を可能にする開発プラットフォームです。 React Native for Desktop には、Windows および macOS 用の React Native が含まれており、React Native のサポートが Windows SDK に提供されます。 React Native for Desktop では、JavaScript を使用して、Windows 10 および Windows 11 でサポートされているすべてのデバイス用のネイティブ Windows アプリを構築できます。 これには PC、タブレット、2 in 1、Xbox、Mixed Reality デバイスなどが含まれます。
React Native for Desktop では、JavaScript または TypeScript でほとんどのアプリ コードまたはすべてのアプリ コードを記述し、フレームワークによってネイティブの UWP XAML アプリケーションが生成されます。 アプリでプラットフォーム API を呼び出す必要がある場合は、通常、多くのコミュニティ モジュールの 1 つを通じて行うことができます。また、モジュールがまだ存在しない場合は、簡単にネイティブ モジュールを記述して公開することができます。
デスクトップ用の React Native を選択する理由を次に示します。
できる限り複数のプラットフォーム間でコードを共有したい。または。コードを共有する Web プロパティがある。
アプリでネイティブのコントロール、外観、アニメーション、および色が使用されるため、Windows で使用されるデザイン言語に統合される。 さらに、React Native for Desktop アプリでは、プラットフォーム API を呼び出したり、独自のビュー マネージャーやネイティブ モジュールを記述したりできるため、呼び出すことができる API のセットを侵害する必要はありません。
プログレッシブ Web アプリ (PWA) では、クロスプラットフォームの相互運用性を提供するためのオープン Web テクノロジにアクセスできます。 PWA は、デバイス用にカスタマイズされたアプリのようなエクスペリエンスをユーザーに提供します。 PWA は、サポートされている (Windows などの) プラットフォームではインストールされたネイティブ アプリのように機能しながら、他のブラウザーでは通常の Web サイトと同様に機能するように段階的に拡張されている Web サイトです。
Windows にインストールされた PWA は、他のアプリと同じです。 次に例を示します。
PWA は、[スタート] メニューに追加できます。
PWA は、タスク バーにピン留めできます。
PWA は、ファイルを処理できます。
PWA は、ユーザーがサインインしたときに実行できます。
PWA は、何百万人もの Windows ユーザーが他の Windows アプリと共に検出して簡単にインストールできる Microsoft Store に送信できます。
Windows 用アプリケーションの開発には広範なオプションがあります。 最適なオプションは、アプリケーションの要件、既存のコード、およびテクノロジの習熟度によって異なります。 次の表に、Windows で使用できる最も一般的なアプリ開発フレームワークと、各フレームワークでサポートされる機能を示します。
Windows 開発者には、Windows で実行されるアプリケーションを作成するためのさまざまなオプションがあります。 このモジュールでは、Windows 開発に使用できる Windows UI フレームワークを紹介します。 また、アプリケーションに最適なフレームワークを選ぶ方法に関するガイダンスも提供します。