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应用方面也还处于初期阶段。