マイクロソフトの「Blazor」が正式版に、まずサーバサイドで。C#と.NET Core 3.0に対応したWebアプリケーションフレームワーク

2019年10月1日

マイクロソフトのWebアプリケーションフレームワーク「Blazor」が、.NET Core 3.0のリリースと同時に、本番環境に投入可能な品質に到達したことが明らかになりました。

Blazorは、JavaScriptとReactやAngularなどのフレームワークの代わりに、C#と.NET Coreフレームワークなどを用いてWebアプリケーションの開発を可能にするフレームワークです。

fig1

Blazorは、WebAssembly上に.NETフレームワークやランタイムを実装することで、Webブラウザで.NET対応のWebアプリケーションを実現するフレームワークとして登場しました

この実装は「Blazor WebAssembly」あるいは「Client-side Blazor」として現在も開発が進められており(下図左)、来年2020年5月に登場する見通しです。

今回正式版となったのは「Server-side Blazor」もしくは「Blazor Server」や「ASP.NET Core 3.0 Blazor」と呼ばれる実装で、ASP.NET Core 3.0とBlazorを用い、サーバサイドで実行されるものです(下図右)。

fig2

Server-side Blazorでは、Webブラウザに専用のJavaScriptのコンポーネントをロードします。このコンポーネントは、「ASP.NET SignalR」(ASP.NET シグナルアール)と呼ばれる技術でサーバとクライアント間の通信を行いつつ、Webブラウザ上でDOM操作などを行うことにより画面表示を行うものです。

Client-side BlazorとServer-side Blazorはアプリケーションが実行される場所が異なるだけで、アプリケーションのコードは共通のものになる予定。

Client-side Blazorではオフラインにも対応、Server-side Blazorはロード時間が短いなど、それぞれの特性は異なります。

fig3

Sever-side Blazorの正式リリースは、9月24日に行われた「.NET Core 3.0」の正式リリースと同時に行われたものでした。

ただ筆者が調べた範囲では、(ASP.NET Core 3.0 Blazorとしての登場は示されたものの)ブログやプレスリリースなどで正式リリースになったことの明示は見つけられず、下記の動画の冒頭で「Today, .NET Core 3.0 has shipped. Which means Blazor is now available for production use on the server」(今日、.NET Core 3.0正式版が登場しました。つまり、Blazorも本番環境のサーバで利用できるようになったのだ)というセリフによって正式版になったことに気づかされました(そのため記事化が少し遅れたわけです……)。

Blazorは、Webアプリケーションのフロントエンド周りを含めて.NETテクノロジーで実装可能にするという新たな選択肢を提供することになります。来年5月に登場予定のBlazor WebAssemblyは、それをさらに大胆な方法で実現するものとして注目されるでしょう。

関連記事

このエントリーをはてなブックマークに追加
follow us in feedly




カテゴリ

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本