.NET平台系列10 .NET统一平台愿景
2019年,微软分享了【统一的.NET堆栈和生态系统的愿景】。给开发者带来的价值是,将能够使用一组API,语言和工具来针对广泛的应用程序类型,包括移动,云,桌面和IoT。可能会意识到,如今已经可以使用.NET定位广泛的平台,但是,这些工具和API在Web和Mobile上并不总是相同的,例如它们不是同时发布的。
作为.NET 5.0和6.0的一部分,我们正在将.NET统一到一个单一的产品体验中,同时使您能够选择希望使用的.NET平台的各个部分。如果您希望以移动设备而不是WebAssembly为目标,则不需要下载WebAssembly工具,反之亦然。与ASP.NET Core和WPF相同。您还可以更轻松地从命令行获取所需的所有.NET工具、构建包和运行时包。我们正在为.NET平台组件启用包管理器体验(包括使用现有的包管理器)。这对于很多场景来说都很好。快速构建开发环境和CI/CD可能是最大的受益者。
我们本打算用.NET5.0实现整个统一愿景,但在全球流行之后,我们必须适应客户不断变化的需求。我们一直在与来自世界各地的公司的团队合作,这些公司需要帮助来加快云技术的采用。他们也必须适应顾客不断变化的需求。因此,我们在两个版本中实现了这一愿景。

实现这一愿景的第一步是整合.NET仓库,其中包括很大一部分的Mono。为运行时提供一个repo和为.NET提供一个库是在任何地方提供相同产品的先决条件。它也有助于做出影响运行时和库的广泛更改,因为以前存在repo边界。一些人担心大型回购会更难管理。事实证明并非如此。
在.NET 5.0版本中,Blazor是利用回购合并和.NET统一的最佳示例。Blazor WebAssembly的运行时和库现在是从合并的dotnet /运行时仓库中构建的。例如,这意味着服务器上的Blazor WebAssembly和Blazor使用与完全相同的代码,如:List<T>。.NET 5.0之前的Blazor并非如此。我们为Blazor WebAssembly采取的方法与在.NET 6.0中使用Xamarin的方法非常相似。
.NET Framework仍然是受支持的Microsoft产品,并且每个新版本的Windows都将继续支持.NET Framework。去年,我们宣布已停止向.NET Framework添加新功能,并已向.NET Core添加.NET Framework API。这意味着现在是考虑将.NET Framework应用程序移至.NET Core的绝佳时机。对于.NET Framework客户端开发人员,.NET 5.0支持Windows窗体和WPF。我们已经从许多开发人员那里听说,从.NET Framework进行移植非常简单。对于.NET Framework服务器开发人员,您需要采用ASP.NET Core才能使用.NET 5.0。对于Web Forms开发人员,我们认为Blazor通过高效且更加现代的实现方式提供类似的开发人员体验。WCF服务器和Workflow用户可以查看支持那些框架的社区项目。在从.NET框架到.NET核心移植文档是一个良好的开端。综上所述,如果您对自己的应用程序感到满意,那么将应用程序保持在.NET Framework上是一种很好的方法。
Windows团队正在研究Reunion,这是UWP和相关技术的下一步。我们一直在与Reunion团队合作,以确保.NET 5.0和更高版本可以与WinUI和WebView2很好地配合使用。Project Reunion回购是了解最新进展的最佳场所。

参考文献:https://devblogs.microsoft.com/dotnet/announcing-net-5-0/
.NET平台系列10 .NET统一平台愿景的更多相关文章
- .NET平台系列13 .NET5 统一平台
系列目录 [已更新最新开发文章,点击查看详细] 时机决定一切,对于 .NET5 也是如此.实际上微软.NET团队在开始开发 .NET Core 时,对 .NET Framework 的全面重写 ...
- .NET平台技术体系梳理+初学者学习路径推荐+我们的愿景与目标
文章出自:http://www.cnblogs.com/ice-river/p/3475041.html 一 .NET平台技术体系梳理 .NET平台应用领域众多(桌面开发,web开发,移动开发),不断 ...
- UWP 统一平台开发介绍
什么是UWP? 很多程序员都有一个梦想:希望自己开发的软件能够轻而易举的在所有平台上运行,而不是把同样的需求,用不同的技术.工具重新开发才能够运行在所有平台上.这就是跨平台,很多软件从业者都在为这个梦 ...
- [渣译文] SignalR 2.0 系列: 支持的平台
原文:[渣译文] SignalR 2.0 系列: 支持的平台 英文渣水平,大伙凑合着看吧,并不是逐字翻译的…… 这是微软官方SignalR 2.0教程Getting Started with ASP. ...
- Microsoft Azure 微软云平台系列新品发布
在移动为先,云为先的今天,微软为拥抱云文化的企业提供了技术和工具.利用创新且全面的移动解决方案和开发者工具,微软有独到之处,它帮助所有客户在云为先时代中发现潜在价值. 正如希望加快云创新步伐的你们所期 ...
- 容器云平台No.10~通过gogs+drone+kubernetes实现CI/CD
什么是CI/CD 持续集成(Continous Intergration,CI)是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每 ...
- .NET6 平台系列4 .NET开源之路
系列目录 [已更新最新开发文章,点击查看详细] .NET平台是微软于2000年推出的Windows操作系统的应用软件开发框架,发展至今形成巨大的技术栈,涉及多语言(支持C#.F#.VB.NET ...
- .NET平台系列5 .NET Core 简介
系列目录 [已更新最新开发文章,点击查看详细] 自1995年互联网战略日以来最雄心勃勃的事业 -- 微软.NET战略, 2000年6月30日. 微软公司于2002年2月13日正式推出第一代.N ...
- .NET平台系列21:云原生时代 .NET5 雄霸天下
系列目录 [已更新最新开发文章,点击查看详细] 随着互联网持续高歌猛进,相关技术名词也是层出不穷.微服务.容器化.DevOps.ServerLess.FaaS,这两年最火的当属云原生Cloud ...
随机推荐
- CodeForces571A. Lengthening Sticks(组合数学-容斥)
题目大意: a,b,c三根木棍可以增加三个不同的数字,aa,bb,cc,且aa+bb+cc<=L,问能构成三角形的木棒有多少种方案 题目思路: 如果我们直接考虑把L分配给aa,bb,cc好像不好 ...
- 「HTML+CSS」--自定义加载动画【006】
前言 Hello!小伙伴! 首先非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- 哈哈 自我介绍一下 昵称:海轰 标签:程序猿一只|C++选手|学生 简介:因C语言结识编程,随后转入计算机 ...
- [贪心]D. 【例题4】国王游戏
D . [ 例 题 4 ] 国 王 游 戏 D. [例题4]国王游戏 D.[例题4]国王游戏 解析 贪心思想,考虑交换后的值比交换前的小. 然后数据规模用高精度 Code #include <b ...
- ognl表达式应用场景和用法
ognl表达式的用法和应用场景 1.配置文件 //书写方式是:'${@类全限定名@常量}' dic_city.type=${@com.imooc.constant.DictionaryConstant ...
- C#修改AD账号及密码
在使用AD域环境搭建的账号系统修改密码的时候比较麻烦一般需要管理员在域环境去进行对用户的密码进行修改. 以下就是用来查询和修改AD域密码的方法. 1 /// <summary> 2 /// ...
- OO_Unit3总结
OO_Unit3总结 一.JML情况 理论基础 JML(Java Modeling Language)是用于对Java程序进行规格化设计的一种表示语言,为严格的程序设计提供了一套行之有效的方法.通过J ...
- 利用卷影拷贝服务提取ntds.dit
0x01 前言 通常情况下,即使拥有管理员权限,也无法读取域控制器中的C:\Windows\NTDS\ntds.dit文件.那么什么是ntds.dit呢? ntds.dit文件是一个数据库,用于存储A ...
- RocketMq(一)初识
消息中间件基本上是互联网公司必用的一个中间件,为什么要使用MQ,当然是因为能给我们的系统带来很多好处. 消息队列简单来说是一种先进先出的数据结构,先简单认识下. 一.应用场景 消息中间件主要应用场景主 ...
- 2. linux下如何上传和下载文件
一. 安装工具包 yum install -y lrzsz lrzsz是一个unix通信套件提供的X,Y,和ZModem文件传输协议,可以用在windows与linux 系统之间的文件传输,体积小速度 ...
- Day07_39_集合中的remove()方法 与 迭代器中的remove()方法
集合中的remove()方法 与 迭代器中的remove()方法 深入remove()方法 iterator 中的remove()方法 collection 中的remove(Object)方法 注意 ...