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回购是了解最新进展的最佳场所。

.NET未来规划


参考文献:https://devblogs.microsoft.com/dotnet/announcing-net-5-0/

.NET平台系列10 .NET统一平台愿景的更多相关文章

  1. .NET平台系列13 .NET5 统一平台

    系列目录     [已更新最新开发文章,点击查看详细] 时机决定一切,对于 .NET5 也是如此.实际上微软.NET团队在开始开发 .NET Core 时,对 .NET Framework 的全面重写 ...

  2. .NET平台技术体系梳理+初学者学习路径推荐+我们的愿景与目标

    文章出自:http://www.cnblogs.com/ice-river/p/3475041.html 一 .NET平台技术体系梳理 .NET平台应用领域众多(桌面开发,web开发,移动开发),不断 ...

  3. UWP 统一平台开发介绍

    什么是UWP? 很多程序员都有一个梦想:希望自己开发的软件能够轻而易举的在所有平台上运行,而不是把同样的需求,用不同的技术.工具重新开发才能够运行在所有平台上.这就是跨平台,很多软件从业者都在为这个梦 ...

  4. [渣译文] SignalR 2.0 系列: 支持的平台

    原文:[渣译文] SignalR 2.0 系列: 支持的平台 英文渣水平,大伙凑合着看吧,并不是逐字翻译的…… 这是微软官方SignalR 2.0教程Getting Started with ASP. ...

  5. Microsoft Azure 微软云平台系列新品发布

    在移动为先,云为先的今天,微软为拥抱云文化的企业提供了技术和工具.利用创新且全面的移动解决方案和开发者工具,微软有独到之处,它帮助所有客户在云为先时代中发现潜在价值. 正如希望加快云创新步伐的你们所期 ...

  6. 容器云平台No.10~通过gogs+drone+kubernetes实现CI/CD

    什么是CI/CD 持续集成(Continous Intergration,CI)是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每 ...

  7. .NET6 平台系列4 .NET开源之路

    系列目录     [已更新最新开发文章,点击查看详细] .NET平台是微软于2000年推出的Windows操作系统的应用软件开发框架,发展至今形成巨大的技术栈,涉及多语言(支持C#.F#.VB.NET ...

  8. .NET平台系列5 .NET Core 简介

    系列目录     [已更新最新开发文章,点击查看详细] 自1995年互联网战略日以来最雄心勃勃的事业 -- 微软.NET战略, 2000年6月30日. 微软公司于2002年2月13日正式推出第一代.N ...

  9. .NET平台系列21:云原生时代 .NET5 雄霸天下

    系列目录     [已更新最新开发文章,点击查看详细] 随着互联网持续高歌猛进,相关技术名词也是层出不穷.微服务.容器化.DevOps.ServerLess.FaaS,这两年最火的当属云原生Cloud ...

随机推荐

  1. 优化 ASP.NET Core Docker 镜像的大小

    在这容器化的世界里,我们已经很少直接通过文件发布来运行asp.net core程序了.现在大多数情况下,我们都会使用docker来运行程序.在使用docker之前,我们往往需要打包我们的应用程序.as ...

  2. Kubernetes 实战 —— 04. 副本机制和其他控制器:部署托管的 pod

    保持 pod 健康 P84 只要 pod 调度到某个节点,该节点上的 Kubelet 就会运行 pod 的容器,从此只要该 pod 存在,就会保持运行.如果容器的主进程奔溃, Kubelet 就会自动 ...

  3. 【JVM进阶之路】七:垃圾收集器盘点

    在前面,我们已经了解了JVM的分代收集,知道JVM垃圾收集在新生代主要采用标记-复制算法,在老年代主要采用标记-清除和标记-整理算法.接下来,我们看一看JDK默认虚拟机HotSpot的一些垃圾收集器的 ...

  4. 前端 | vxe-table 翻页保留复选框状态

    0 前言 在前端开发过程中时常会遇到表格相关的显示与处理.组件库通常都会提供表格组件,对于展示.简单操作这些常用功能通常也够用:但如果需要更多的定制或进行比较复杂的操作,组件库自带的组件可能会捉襟见肘 ...

  5. C#异步编程由浅入深(二)Async/Await的作用.

      考虑到直接讲实现一个类Task库思维有点跳跃,所以本节主要讲解Async/Await的本质作用(解决了什么问题),以及Async/Await的工作原理.实现一个类Task的库则放在后面讲.首先回顾 ...

  6. 配置IIS虚拟站点(5)

    开发完ASP.NET网站后,想要直接浏览,不通过开发环境,那么就需要配置IIS虚拟站点 1.开始菜单->控制面板->所有控制面板->管理工具->双击打开Internet信息服务 ...

  7. Python基础(十四):while循环与break、continue关键字

    前面我们已经学习了for循环,今天再带着大家讲述一下while循环.那么for循环和while循环,到底有什么区别呢? Python中for循环和while循环本质上是没有区别的,但是在实际应用上,针 ...

  8. BUAA防脱发第一抗连——团队介绍

    项目 内容 这个作业属于哪个课程 2021学年春季软件工程(罗杰 任健) 这个作业的要求在哪里 团队项目-团队介绍 我在这个课程的目标是 锻炼在大规模开发中的团队协作能力 这个作业在哪个具体方面帮助我 ...

  9. Java(279-298)【异常、线程】

    1.异常的概念&异常的体系 异常,就是不正常的意思.在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将 受影响.在程序中的意思就是: 异常 :指的是程序在执行过 ...

  10. Spring 学习笔记(一):Spring 入门

    1 Spring简介 Spring是一个轻量级Java开发框架,最早由Rod Johnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题,是一个分层的Java SE/EE ful ...