您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > .NET

.NET大牛之路 | 004 .NET的现状和未来

时间:2021-07-15 11:08:37  来源:  作者:精致码农

我们总是能听到一些人说,.NET 不行、学 .NET 没发展前途之类的言论,有的童鞋听多了便也开始怀疑自己选择的 .NET 方向是不是错了。

不得不承认,在 .NET 没有实现跨平台之前,市场行情确实是一路下滑。受此影响,.NET 近几年在国内的发展,不管是生态还是开发者数量,也确实不如 JAVA

但从 .NET Core 问世后,它的发展趋势便开始出现扭转,发展至今各方面表现都朝着越来越好的方向发展。我们不妨用数据来看看 .NET 的发展现状到底如何,未来是否值得我们的期待和追逐。

现状

关于现状,我从官方的几个 YouTube 视频介绍中截取了两张图。一张是 .NET 平台截止 2020 年(去年) 12 月开发者数量大致的变化情况:

.NET大牛之路 | 004 .NET的现状和未来

来源:YouTube

另一张是 .NET 平台截止 2021(今年) 年 5 月开发者数量、受欢迎度、性能等方面的表现数据:

.NET大牛之路 | 004 .NET的现状和未来

来源:YouTube

概括起来有如下几点:

开发者数量

截止 2021(今年) 年 5 月,全球有超过 500 万的 .NET 开发者。过去一年(2020 年)的跨平台 .NET Core 活跃开发者数量增长超过 60 万。而这些数据仅来源于 Visual Studio IDE,不包含使用其它 IDE 的开发者。

从官网的 .NET SDK 下载量来看,.NET 开发者每年都在快速增长。其中,在新增长的 .NET 开发者中,有 40% 是学生,说明有大量年轻开发者正在涌入 .NET 大家庭中。

社区发展

在 2019 年和 2020 年的 Stack Overflow 开发者年度调查报告中,.NET Core 连续两年被评为最受欢迎的开发框架

.NET大牛之路 | 004 .NET的现状和未来

 

其中 ASP.NET Core 被评为最受欢迎的 Web 框架。

.NET大牛之路 | 004 .NET的现状和未来

 

相关链接:

https://insights.stackoverflow.com/survey/2020#most-loved-dreaded-and-wanted
https://insights.stackoverflow.com/survey/2019#most-loved-dreaded-and-wanted

.NET 平台下的开源项目,在 GitHub 近两年开源项目贡献(包含 Commit、Issue 等)增长量排名中名列前三十,参与贡献的开发者非常多,全球有 6 万多名开发者贡献了代码。C# 编程语言在 GitHub 的使用量排名中名列前五。

性能表现

在 .NET 相关框架大版本发布时,几乎每次都有关于性能提升的报告。ASP.NET Core 的性能比 Node.js 快 10 倍多,与 Go 的 Web 框架旗鼓相当。

有参考意义的是对 gRPC 实现的框架性能的比较,它比较能反应综合性能的差异。请看下图右边图表,基于 .NET 5 实现的 gRPC 框架与其它 gRPC 框架的对比:

.NET大牛之路 | 004 .NET的现状和未来

来源:YouTube

.NET 5 的 gRPC 框架性能仅次于 Rust 的框架,略微高于 Go 和 C++,比 Java 高出 12% 之多。注:这里比的是基于编程语言实现的框架,而不是编程语言本身。

其它方面

.NET 的现状还包括生态发展情况,这一点我在第 2 篇文章也讲过。.NET 是目前全球市场上唯一一个涵盖 Web、桌面客户端、手机应用、微服务、云原生、机器学习、游戏、物联网等跨平台的全能开发解决方案。同时各领域开源的开发框架和库也越来越多。

近几年,微软和 .NET 社区做了大量艰辛的工作,使得 .NET 的发展越来越趋向良好,生态也越来越完善。

在国内也有很多大厂采用 .NET 技术,比如腾讯、阿里云和网易等,甚至我们的国产 CPU 龙芯也在热情拥抱 .NET。尤其是大型手游开发这块,C# 的使用率独占鳌头,比如腾讯的很多手游都是基于 C# 使用 Unity 开发的,包括著名的王者荣耀。

未来

自 .NET Core 问世以来,随着近几年的快速迭代和发展,.NET Core(现在是 .NET 5+)在各方面不断地完善和提高,微软团队和 .NET 社区一直在努力打造更轻量、更快、更适合云原生的 .NET 平台。现在 .NET (Core) 已然成为最主流最受欢迎的开发框架之一。

微软将在今年 11 月份发布大统一的 .NET 6 长期支持版本,此次 .NET 6 版本的目标很明确:

.NET大牛之路 | 004 .NET的现状和未来

来源:YouTube

目标是彻底实现和完善统一的工具链、跨平台原生 UI、云原生、性能改进和生产效率提高等。从已经发布的 .NET 6 预览版本来看,进度符合预期,正在按照计划推进。

性能和生产效率一直都是微软团队和 .NET 社区孜孜不倦的追求,这两方面将越来越突显 .NET 的优势。

另外,在本次即将发布的 .NET 6 中,很明显微软正在强化移动开发这个生态领域,引入了跨平台的原生应用开发框架--MAUI,这绝不是简单的 Xamarin 回炉重造。MAUI 是我个人比较期待和看好的一个方向。

未来 .NET 每年都会发布一个主要版本,奇数年份的主要版本为长期支持(LTS)版本。

.NET大牛之路 | 004 .NET的现状和未来

来源:YouTube

在可预测的时间表中,微软也会根据需要进行小规模发布 .NET 版本,以不断持续改进 .NET 的速度、大小和性能。未来路线和支持情况很明确,给了使用 .NET 的开发者和公司一颗定心丸。

开发市场正在热情地拥抱 .NET。随着长期支持版本 .NET 6 发布,将更会有越来越多的 .NET 的开发者和公司加入到 .NET 的大家庭中。

我个人相信未来 .NET 的前景会越来越好,它值得我们的期待和为之付出努力。



Tags:.NET   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
编译和反编译.NET 中的编译是把开发人员写的 C# 代码转化为计算机可理解的代码的过程,也就是中间语言代码(IL代码)。在这个过程中,C# 源代码被转换为可执行文件(exe或者dll 文件)...【详细内容】
2022-07-15  Tags: .NET  点击:(1)  评论:(0)  加入收藏
我们在开发 webapi 项目时如果遇到 api 接口需要同时支持多个版本的时候,比如接口修改了入参之后但是又希望支持老版本的前端(这里的前端可能是网页,可能是app,小程序 等等)进行...【详细内容】
2022-07-14  Tags: .NET  点击:(3)  评论:(0)  加入收藏
什么是.NET.NET 是由 Microsoft 创建的开源开发平台,用于生成多种不同类型的应用程序,主要支持C#、F#及VB。.NET程序运行原理.NET程序的运行是由其虚拟机CLR(公共语言运行时)把...【详细内容】
2022-06-21  Tags: .NET  点击:(26)  评论:(0)  加入收藏
项目介绍一套基于.NetCore+Vue2/Vue3+Element plus+uniapp,采用前后端分离方式,全自动生成PC与移动端代码的快速开发脚手架;支持移动端(uniapp)ios/android/h5/微信小程序。 Vu...【详细内容】
2022-06-13  Tags: .NET  点击:(56)  评论:(0)  加入收藏
多年前借鉴b/s优势实现基于.net的c/s框架 本框架未采用.NET固有的WCF通讯解决方案,而使用传统http数据加密方式.框架初始和传统客户端升级方式一样检查新版本,如有则下载升级...【详细内容】
2022-06-05  Tags: .NET  点击:(30)  评论:(0)  加入收藏
Asp.Net Core Identity 是.Net自带的身份认证系统,支持用户界面 (UI) 登录功能,并且管理用户、密码、配置文件数据、角色、声明、令牌、电子邮件确认等等。使用Visual Studio...【详细内容】
2022-06-05  Tags: .NET  点击:(35)  评论:(0)  加入收藏
安装Hangfire新建ASP.NET Core空 项目,.Net Core版本3.1 往*.csproj添加包引用,添加新的PackageReference标记。如下所示。请注意,下面代码段中的版本可能已经过时,如有需要,请使...【详细内容】
2022-05-07  Tags: .NET  点击:(76)  评论:(0)  加入收藏
 B/S架构的Web程序几乎占据了应用软件的绝大多数市场,但是C/S架构的WinForm、WPF客户端程序依然具有很实用的价值,如设计类软件 AutoCAD与Autodesk Revit、WPS、IT类的集成开...【详细内容】
2022-04-27  Tags: .NET  点击:(153)  评论:(0)  加入收藏
前几天有个老项目找到我,有多老呢?比我工作年限都长,见到这个项目我还得叫一声前辈。这个项目目前使用非常稳定,十多年了没怎么更新过,现在客户想加一个小功能:在线预览Word文档。...【详细内容】
2022-04-27  Tags: .NET  点击:(65)  评论:(0)  加入收藏
之前,我们已经了解了ASP.NET Core中的身份认证,现在,我们来聊一下授权。老规矩,示例程序源码XXTk.Auth.Samples已经提交了,需要的请自取。概述ASP.NET Core中的授权方式有很多,我...【详细内容】
2022-04-20  Tags: .NET  点击:(143)  评论:(0)  加入收藏
▌简易百科推荐
编译和反编译.NET 中的编译是把开发人员写的 C# 代码转化为计算机可理解的代码的过程,也就是中间语言代码(IL代码)。在这个过程中,C# 源代码被转换为可执行文件(exe或者dll 文件)...【详细内容】
2022-07-15  IT狂人日记    Tags:.NET   点击:(1)  评论:(0)  加入收藏
我们在开发 webapi 项目时如果遇到 api 接口需要同时支持多个版本的时候,比如接口修改了入参之后但是又希望支持老版本的前端(这里的前端可能是网页,可能是app,小程序 等等)进行...【详细内容】
2022-07-14  IT技术资源爱好者    Tags:.Net   点击:(3)  评论:(0)  加入收藏
什么是.NET.NET 是由 Microsoft 创建的开源开发平台,用于生成多种不同类型的应用程序,主要支持C#、F#及VB。.NET程序运行原理.NET程序的运行是由其虚拟机CLR(公共语言运行时)把...【详细内容】
2022-06-21  威步上海    Tags:.NET   点击:(26)  评论:(0)  加入收藏
Asp.Net Core Identity 是.Net自带的身份认证系统,支持用户界面 (UI) 登录功能,并且管理用户、密码、配置文件数据、角色、声明、令牌、电子邮件确认等等。使用Visual Studio...【详细内容】
2022-06-05  海椰人  博客园  Tags:.Net   点击:(35)  评论:(0)  加入收藏
安装Hangfire新建ASP.NET Core空 项目,.Net Core版本3.1 往*.csproj添加包引用,添加新的PackageReference标记。如下所示。请注意,下面代码段中的版本可能已经过时,如有需要,请使...【详细内容】
2022-05-07  壮志林云    Tags:.NET   点击:(76)  评论:(0)  加入收藏
 B/S架构的Web程序几乎占据了应用软件的绝大多数市场,但是C/S架构的WinForm、WPF客户端程序依然具有很实用的价值,如设计类软件 AutoCAD与Autodesk Revit、WPS、IT类的集成开...【详细内容】
2022-04-27  IT技术资源爱好者  博客园  Tags:.NET   点击:(153)  评论:(0)  加入收藏
前几天有个老项目找到我,有多老呢?比我工作年限都长,见到这个项目我还得叫一声前辈。这个项目目前使用非常稳定,十多年了没怎么更新过,现在客户想加一个小功能:在线预览Word文档。...【详细内容】
2022-04-27  海椰人  博客园  Tags:.Net   点击:(65)  评论:(0)  加入收藏
之前,我们已经了解了ASP.NET Core中的身份认证,现在,我们来聊一下授权。老规矩,示例程序源码XXTk.Auth.Samples已经提交了,需要的请自取。概述ASP.NET Core中的授权方式有很多,我...【详细内容】
2022-04-20  日行四善  博客园  Tags:授权   点击:(143)  评论:(0)  加入收藏
序言本文将分别介绍 Authentication(认证) 和 Authorization(授权)。并以简单的例子在 ASP.NET Core 6.0 的 WebAPI 中分别实现这两个功能。 相关名词Authentication 和 Author...【详细内容】
2022-04-18  芦荟柚子茶  博客园  Tags:ASP.NET   点击:(197)  评论:(0)  加入收藏
前言由于客户网络安全限制,连接到互联网的设备不能访问内网。需要先从客户端应用中导出数据到文件,再将文件复制到U盘,最后通过内网机器上传数据。如何保证,在复制、传输过程中,...【详细内容】
2022-03-22  My IO    Tags:.NET Core   点击:(125)  评论:(0)  加入收藏
站内最新
站内热门
站内头条