写点什么

Blazor 正式成为 Microsoft 官方.NET 和 WebAssembly 项目

  • 2018-02-21
  • 本文字数:1074 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Microsoft 从 Blazor 的开发者 Steve Sanderson 手中接手了这款应用程序,自此,将.NET 在浏览器运行的计划又更进了一步。由此,Microsoft 又进一步扩充了自己的 WebAssembly/.NET 栈,更进一步帮助.NET 开发人员搭建基于浏览器的应用程序。

在一篇博文中,Dan Roth Blazor 是一种“新的实验”,.NET 开发人员可以使用它搭建 web 浏览器单页应用程序。有人可能不太理解这篇报道,因为 Blazor 是由 Microsoft 的工程师 Steve Sanderson 最早开发,并在 2017 年中期首次展示,为何 Microsoft 还要接手呢?实际上,这个项目现在正式成为 ASP.NET 项目的一部分,而不仅仅只是一个个人项目了。Sanderson 在其博客中的文章提供了更多的相关细节:

今天,ASP.NET 团队宣布 Blazor 正式成为 ASP.NET 项目的一部分,我们也在实验阶段,尝试将它开发为一款辅助产品。

Sanderson 称,Blazor 虽然是基于一些 JavaScript 框架,比如 React、Vue 和 Angular,但是它也与 ASP.NET 程序员熟悉的一些技术相结合。

Blazor 将拥有和其他 web 应用程序框架相类似的功能集,比如组件模型、路由以及 JavaScript 交互操作。例如组件可以通过 C#类或是 Razor 页面实现。路由和布局通常是 web 框架的基本功能,但也是有操作空间的,仅需保持负载尽量小即可。

JavaScript 生态圈非常巨大,JavaScript 开发人员可以参考许多现有库进行开发。Sanderson 表示,团队正在尝试使用现有的 TypeScript 定义文件,提供调用 C#代码的工具支持。

Blazor 项目是基于 Mono 团队将C#编译为WebAssembly 的工作进行的。Mono 团队的工作是非常底层的,并没有为任何典型的web 应用程序开发提供任何框架,而仅仅只是在浏览器中运行.NET。

Blazor 成为 ASP.NET 项目的一部分意味着,它将获得更多资源,会以更快的速度发展,但现在就宣布它已经是生产级别的产品还为时过早。

在实验阶段,我们希望和 Blazor 早期使用者保持紧密联系,听到他们的反馈和建议。这可以帮助我们解决在浏览器中运行.NET 的技术问题,并帮助我们创造出开发人员爱用、实用的产品。

WebAssembly 是二进制格式的,旨在给 web 开发人员提供近乎原生的浏览器性能,而不需要额外解析 JavaScript。所有主要的浏览器都提供对它的支持

查看英文原文 Blazor Now an Official Microsoft .NET and WebAssembly Project


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2018-02-21 18:002870
用户头像

发布了 218 篇内容, 共 70.2 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

LeetCode刷题278-简单-第一个错误版本

ベ布小禅

9月日更

“人类先锋”点亮物联网灯塔

脑极体

以两军问题为背景来演绎BasicPaxos

OpenIM

重磅!博睿数据通过CMMI5级评估,国内APM领域首家

博睿数据

看云起云动 览开源盛世 | 亚马逊云科技中国峰会Dev Day线上来袭!

亚马逊云科技 (Amazon Web Services)

【HTML5游戏】从敲打空格键开始

devpoint

HTML5游戏 9月日更

AJAX获取的日期相差8小时

hasWhere

Go 专栏|基础数据类型:整数、浮点数、复数、布尔值和字符串

AlwaysBeta

Go 语言

Java + opencv 实现图片修复(图片去水印)

张音乐

Java OpenCV 音视频 9月日更 图片去水印

线程同步类CyclicBarrier在性能测试集合点应用

FunTester

多线程 性能测试 线程安全 测试框架 FunTester

Linux内核四大核心框架

hanaper

Go 专栏|复合数据类型:字典 map 和 结构体 struct

AlwaysBeta

Go 语言

kubebuilder 构建控制器说明点

Geek_f24c45

Kubernetes kubebuilder kube-controller

数字人民币最新技术成果将亮相2021年服贸会

CECBC

AISWare AntDB 亚信数据库在多省份计费系统应用案例

亚信AntDB数据库

案例分享 #数据库 9月日更

ShardingSphere 语句解析生成初探

源码 ShardingSphere

链路压测中各接口性能统计

FunTester

性能测试 测试框架 测试开发 FunTester 链路测试

直播访谈-数据产品修炼之路

第519区

数据产品经理

财经大课:如何看待规模化与差异化竞争

石云升

财经思维 9月日更

数据结构和算法在流程画布中的实际应用

GrowingIO技术专栏

数据结构 G6 图可视化引擎 流程画布

MySQL 获取表的信息

玄兴梦影

MySQL 数据库表 查询语句

网络攻防学习笔记 Day124

穿过生命散发芬芳

9月日更 互联网安全

数据安全法真的来了,这6个“雷区”千万别踩!

腾讯安全云鼎实验室

数据安全 数据安全法

未来10年,5个C/C++吃香的细分领域技术

奔着腾讯去

云原生 网络安全 音视频 DPDK 虚拟化技术

Go 专栏|变量和常量的声明与赋值

AlwaysBeta

Go 语言

Go 专栏|复合数据类型:数组和切片 slice

AlwaysBeta

Go 语言

洞穿性能测试痛点,PerfDog以提升应用和游戏的品质为使命

WeTest

北鲲云超算平台如何帮助现代生物制药发展?

北鲲云

🐦【Mybatis开发指南】如何清晰的解决出现「多对一模型」和「一对多模型」的问题

洛神灬殇

Java mybatis mybatis配置 9月日更

HTTP系列之:HTTP中的cookies

程序那些事

Java 网络协议 HTTP cookies

(深入篇)漫游语音识别技术—带你走进语音识别技术的世界

声网

深度学习 音视频 语音识别

Blazor正式成为Microsoft官方.NET 和WebAssembly项目_.NET_David Iffland_InfoQ精选文章