1. 程式人生 > 其它 >Study Blazor .NET(一)簡介

Study Blazor .NET(一)簡介

翻譯自:Study Blazor .NET,轉載請註明。

介紹

Blazor是一個全新的 Web UI 框架,它使用c# 、Razor 和 HTML以及 WebAssembly W3C標準。它提供了用C#而不是Javascript構建互動式網頁的功能。

Web Assembly(Wasm)

Wasm是W3C開放標準,目的是在瀏覽器中執行低階位元組程式碼。基於此標準,我們可以在瀏覽器中直接執行服務端語言(Rust,C++,C#…)程式碼,從而代替Javascript。
還記得Java applets 和 Microsoft silverlight技術嗎?那時候我們不得不在瀏覽器中安裝外掛才能執行Java和C#程式碼,但是WebAssembly提供了基礎標準,現在不需要任何外掛了。二進位制格式以.wasm 檔案表示,提供接近本機的效能。

SPAs

單頁應用程式(SPA)是指web應用程式建立在瀏覽器的單個頁面上,並且頁面塊在不需要渲染整個頁面的情況下動態渲染。
Angular,React,Vue和一些其他語言都支援構建單頁應用程式,但是這些語言都是在Javascript的基礎上構建。現在,微軟為使用C#構建單頁應用程式提供了基礎,在ASP.Net Core中使用類似Razor語法的c#,叫做Blazor。

ASP.Net Core

ASP.Net core是可以執行在Linux、Mac和Windows作業系統中的開源web框架。現在ASP.Net core提供了新的web框架Blazor,可以在瀏覽器中使用c#和WebAssmbly標準構建單頁應用程式。

元件

在單頁應用程式裡,頁面中基於使用者互動動態渲染的區塊稱為元件。單頁應用程式就是元件的集合,同時它也支援客戶端路由以提供類似多頁面和頁面導航的功能。

優點

  • 提供近乎原生的效能、高效和可移植性。
  • 我們可以使用現有的豐富的.net生態系統,在網頁中包含例如Office工具和其他來自 Nuget 的工具。
  • 程式碼維護和除錯更加可靠。

缺點

  • Javascript已經非常成熟並且市場上已經存在很多相關的庫。
  • 使用Web Assembly標準的Blazor對於市場來說是全新的,需要時間成熟,並且.net技術在WebAssembly應用方面也還處於初期階段。