Blazor Hybrid とは

完了

Web アプリやクライアント アプリを開発する企業には、通常さまざまな役割の開発者がいます。 バックエンドのサーバー側ロジックを作成する開発者もいます。 ある開発者はクライアント側の Web アプリをビルドし、 他の人はモバイルとデスクトップ プラットフォーム向けのネイティブクライアント アプリをビルドします。 多くの場合、これらの開発者は、さまざまな開発言語とテクノロジを使用しています。

サーバー側のロジックを構築する場合は、一般に C# と .NET が選択されます。 クライアント側の Web アプリは、Web UI フレームワークで JavaScript を使用してビルドされる場合がほとんどです。 デスクトップとモバイル向けのネイティブ クライアント アプリに関しては、利用可能な選択肢が複数あり、その多くは .NET と C# 用です。 複数の言語とツールセットの使用には、複数のスキル セットが必要であり、多くの場合、2 つの個別のチームが必要になります。 また、データを転送して表すためのコードは、両方の言語で構築し、同期を保つ必要があります。Blazor Hybrid は、C# と .NET での Web アプリケーションの構築における既存のスキルやコードを使用して、それらの共通のテクノロジを利用するネイティブクライアント アプリケーションを構築できるようにすることで、開発チームのタスク、コード、プロセスを簡素化できます。

このユニットでは、まず、Blazor Hybrid、.NET MAUI、Razor コンポーネントの概要を説明します。

Blazor とは

Blazor アプリは、C#、HTML、および CSS を使用して構築された再利用可能な Web UI コンポーネントで構成されています。 Blazor の場合、開発者は C# を使用してクライアント コードとサーバー コードを構築できます。 また、フロントエンド クライアント コードとバックエンド ロジックとでコードとライブラリを共有することもできます。 すべてのコードに C# を使用すると、フロント エンドとバック エンド間のデータ共有が簡素化され、コードを再利用して開発を迅速化でき、さらにメンテナンスが軽減されます。

Blazor Hybrid とは

Blazor Hybrid によって、開発者はデスクトップとモバイルのネイティブ クライアント フレームワークを .NET と Blazor に融合することができます。

Blazor Hybrid アプリでは、Razor コンポーネントがデバイス上でネイティブに実行されます。 コンポーネントは、ローカルの相互運用チャネルを通じて、埋め込み Web ビュー コントロールにレンダリングされます。 コンポーネントはブラウザーでは実行されず、WebAssembly は関与しません。 Razor コンポーネントは、コードをすばやく読み込んで実行し、.NET プラットフォームを介してデバイスのネイティブ機能にフル アクセスできます。

Blazor Hybrid アーキテクチャを示す図。

.NET MAUI とは

.NET Multi-Platform App UI (.NET MAUI) は、C# と XAML を使用して、ネイティブのモバイル アプリやデスクトップ アプリを作成するためのクロスプラットフォーム フレームワークです。 .NET MAUI を使用すると、単一の共有コードベースから Android、iOS、macOS、Windows 上で実行できるアプリを開発できます。 .NET MAUI の主な目的の 1 つは、アプリ ロジックと UI レイアウトのできるだけ多くを単一のコードベース内に実装できるようにすることです。 .NET MAUI は、Android、iOS、macOS、Windows の各 API を「1 度書けばどこでも動く」という開発者エクスペリエンスを可能とする単一の API に統合すると同時に、それぞれのネイティブ プラットフォームのあらゆる面への深いアクセスも提供します。

.NET MAUI アーキテクチャを示す図。

.NET MAUI を使用した Blazor Hybrid アプリ

.NET MAUI フレームワークには、Blazor Hybrid のサポートが組み込まれています。 .NET MAUI には、埋め込み Web ビューへの Razor コンポーネントのレンダリングを可能にする BlazorWebView コントロールが含まれています。 .NET MAUI と Blazor を併用することで、1 つの Web UI コンポーネント セットをモバイル、デスクトップ、Web にわたって再利用できます。

Blazor Hybrid 開発の要件

Blazor Hybrid アプリは、最新バージョンの Visual Studio 2022 または Visual Studio Code (.NET SDK、.NET MAUI ワークロード、C# 開発キット拡張機能、.NET MAUI 拡張機能がインストールされているもの) を使ってビルドできます。 このモジュールでは、Visual Studio 2022 または Visual Studio Code を使って Blazor Hybrid アプリケーションをビルドします。

開発環境が何であっても、.NET 8.0 の SDK とツールを Visual Studio で使用できるようにするには、.NET MAUI ワークロードをインストールする必要があります。 インストールすると、Blazor Hybrid アプリのビルドを始めるために必要なものがすべて揃います。 次の演習では、初めての Blazor Hybrid アプリをビルドします。