2018 .NET开发者调查报告: .NET Core 是怎么样的状态

4月28日,在公众号里发起《.NET Core 使用调查》,该调查为期一周,有近3300名开发者参与,统计下结果供你的决策参考。640?wx_fmt=png&wxfrom=5&wx_lazy=1

已经使用.net core  的人数只有44%,计划使用.net core 比例达到48%, 没有计划去使用.net core的比例只有8% ,相比一年前的数据有了大幅度改善。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

从.net 的框架分布来说.net fx 4.6和 .net core 2 两个比例已经超过了75%, 使用.net fx 4.0的用户还有20%, 不知道具体是什么原因还停留在 4.0,有可能还在使用winform,程序需要跑在Windows Xp/2003. 应当升级到4.6,经常听到很多人在抱怨招不到人,是不是也要反思下是不是自己使用的技术已经太落后,比如使用Webform技术的,大学里的学生肯定不会再去学习这么被淘汰的技术,更愿意去学习新的.net core技术。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

从人员构成上,女性开发者是个稀有物种,只有1%的用户参与调查,我的公众号里女性用户比例是10%, 说明真正属于开发者的比例确实更低。从人员的从业时间来看,.net 开发者多集中26-36 岁之间,占有比率66%,21-25岁的开发者只有17%,说明.net 平台上新的开发者的补充情况不容乐观,这也是很多人在抱怨.net 开发者难找的原因,同时新的开发者更愿意接受开源跨平台的.net core技术,从分布来看,人员也并没有断层,在培训机构都在制造java的情况下,还是有很多同学选择了从事.net开发,更多的人应该是选择了.netcore,欢迎大家留言。

640?wx_fmt=png

开发的应用类型企业级应用 和互联网后端开发超过 60%, 说明还是有大量的垂直领域的应用使用.net技术。

640?wx_fmt=png

使用的web服务器iis 依然占据 60%,nginx/apache/jexus 有40%的比率,这个也说明了前面大家 采用.net core 技术的,把目标平台选择了Linux系统,.net core作为.net framework的下一代平台,其中变化最大的就是ASP.NET Core, 当前ASP.NET Core 的大多数热点话题都是围绕它的跨平台体验,虽然这是一项巨大成就,但如果你是常规 ASP.NET 用户,编写了大量基本 .NET 4.x 代码,并打算继续使用熟悉的 IIS 和 Windows 环境,你也是可以进行升级的,最典型的应用就是nopCommerce:https://github.com/nopSolutions/nopCommerce 去年12月就完成了迁移到asp.net core,但是他是跑在.NET Framework 4.6.1上的。

640?wx_fmt=png

开发工具的选择上超过了26%的用户选择使用VisualStudio code/VS for Mac/Rider,这些都是.net core平台的开发者。

640?wx_fmt=png

640?wx_fmt=png

Web开发框架的选择上80%以上的用户都选择使用MVC 架构,这也说明了如果你的项目还在使用Webform等老技术,请尽快升级改造为mvc,即将面临成为稀有物种, ORM框架选择方面 Dapper 的使用比率非常,达到了25% 。
回顾 16年前的ASP.NET 团队在设计 ASP.NET 框架时,采用了ASP的大多数最佳实践,并在新框架中采用了这些做法。在此过程中,他们还引入了许多新内容,如编译代码和托管代码、自动回发和服务器控件。ASP.NET Core 采用同样的套路演进。ASP.NET常见最佳实践(如初始加载配置数据、依赖关系注入、NuGet 包、基于声明的身份验证和 Razor 改进)是ASP.NET Core的原生特性。ASP.NET Core还具有不同的启动过程、更为模块化的请求响应中间件,以及用于定义控制器和视图的更为灵活的基础结构。
ASP.NET Core 还是跨平台框架,可方便你开发并在 Windows、macOS 和 Linux 上部署应用程序。这样一来,ASP.NET Core 会强制你编写更优质的代码,即默认强制实现关注点分离,当然你也可以通过自律实现此目标,自律的方式在非常少数的。对于任何形式的新项目(产品)的开发,ASP.NET Core 绝对是首选,.NET Core 2.0的API已经和.NET Framework 4.6.2对齐,.net core 2.1的功能上更加和.net fx 7.2对齐,性能更加强悍,是.net平台真正成为一个高性能跨平台的开发平台。

相关文章:
  • .NET Core 在中国的现状调研
  • .NET Core:新的快速开发平台
  • 中国到底有多少个.NET 程序员?都在哪个城市写代码?

原文地址:http://www.cnblogs.com/shanyou/p/8983695.html


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/321414.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件质量保证划重点期末复习总结

软件质量保证复习总结大纲及问题 Module1 《软件工程实践》 1、软件工程实践通过解决问题的根源来指导软件开发。 2、软件工程实践之间相辅相成。 3、过程指导一个团队在什么时候做什么以及如何做。 4、软件工程过程为实现软件工程实践提供了上下文和支持。 Module2 《软件…

Microsoft Build 2018 直播来啦!

一年一度的Microsoft Build大会又来啦!Microsoft Build是微软面向全球开发者、合作伙伴以及消费者介绍其重要产品在未来一年内发展方向的技术盛会。而今年的Microsoft Build 2018大会是微软巨大蜕变、最彻底组织变革后的第一次前沿技术大会。更多了解,请…

【动态规划】矩阵链相乘 (ssl 1596)/能量项链 (ssl 2006)

矩阵链相乘{\color{Cyan} 矩阵链相乘 }矩阵链相乘 Description Input n表示矩阵的个数(<100) n1个数,表示矩阵(<100) Output 最小的乘法次数 Sample Input 5 5 10 4 6 10 2 Sample Output 348 题目大意&#xff1a; 有n个矩阵&#xff0c;输入n1个数&#x…

10、mybatis中缓存的使用

对于初学者&#xff0c;如何进行mybatis的学习呢&#xff1f;我总结了几点&#xff0c;会慢慢的更新出来。首先大家需要了解mybatis是什么、用mybatis来做什么、为什么要用mybatis、有什么优缺点&#xff1b;当知道了为什么的时候就开始了解如何用的问题&#xff0c;如何使用my…

C#编译器优化那点事

使用C#编写程序&#xff0c;给最终用户的程序&#xff0c;是需要使用release配置的&#xff0c;而release配置和debug配置&#xff0c;有一个关键区别&#xff0c;就是release的编译器优化默认是启用的。优化代码开关即optimize开关&#xff0c;和debug开关一起&#xff0c;有以…

如何在Visual Studio 2017中使用C# 7+语法

前言之前不知看过哪位前辈的博文有点印象C# 7控制台开始支持执行异步方法&#xff0c;然后闲来无事&#xff0c;搞着&#xff0c;搞着没搞出来&#xff0c;然后就写了这篇博文&#xff0c;不喜勿喷&#xff0c;或许对您有帮助。在Visual Studio 2017配置支持C# 7语法心想都VS20…

11、mybatis的功能架构分析

1、Mybatis功能架构 1&#xff09;API接口层&#xff1a;提供给外部使用的接口API&#xff0c;开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。 2&#xff09;数据处理层&#xff1a;负责具体的SQL查找、SQL解析、SQL执…

【动态规划】方格取数 (ssl 1010)

方格取数方格取数方格取数 Description 设有N*N的方格图(N<10,我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0。如下图所示&#xff08;见样例&#xff09;&#xff1a; 某人从图的左上角的A 点出发&#xff0c;可以向下行走&#xff0c;也可以向右走&#…

ASP.NET Core 使用UrlFirewall对请求进行过滤

一. 前言UrlFirewall 是一个开源、轻便的对http请求进行过滤的中间件&#xff0c;可使用在webapi或者网关&#xff08;比如Ocelot&#xff09;,由我本人编写&#xff0c;并且开源在github&#xff1a;https://github.com/stulzq/UrlFirewall 欢迎star.二.UrlFirewall 介绍UrlFi…

1、设计模式和原则总述

目录 一、什么是设计模式&#xff1f;有什么用&#xff1f; 二、设计模式 三、设计原则 一、什么是设计模式&#xff1f;有什么用&#xff1f; 设计模式是一套代码设计的经验总结&#xff0c;使用设计模式可以提高代码的重用性、可靠性&#xff0c;提交代码内聚&#xff0c;降…

Visual Studio 15.7预览版4改进Git、C++支持

对于即将到来的Visual Studio 2017 15.7&#xff0c;微软已经发布了多个新的预览版本。这些版本的变更很有限&#xff0c;似乎离正式发布不远了。通常&#xff0c;变更的涉及面很广——因此&#xff0c;不管是用什么语言&#xff0c;开发人员都可以看到一些好处。第一次&#x…

P2827-蚯蚓【队列】

前言 早年一直拿堆过不了&#xff0c;结果发现要用队列 正题 题目链接:https://www.luogu.com.cn/problem/P2827 题目大意 有nnn条蚯蚓&#xff0c;每次选取最长的一条&#xff0c;切成⌊x∗p⌋\lfloor x*p\rfloor⌊x∗p⌋和x−⌊x∗p⌋x-\lfloor x*p\rfloorx−⌊x∗p⌋的两…

.net core DI 注册 Lazy 类型

当我们在 .net core (2.1) 中运行如下代码注入 Lazy<T> 变量的时候&#xff1a;public AccountService(Lazy<IHttpContextAccessor> httpContextAccessor) { }可能会遇到这样的错误提示&#xff1a;InvalidOperationException: Unable to resolve service for type…

【深搜】 棋盘 【NOIp普及组 2017 第三题】 (luogu 3956/ssl 2851)

棋盘棋盘棋盘 题目大意&#xff1a; 有一个M*M的棋盘&#xff0c;要从&#xff08;1&#xff0c;1&#xff09;到&#xff08;m,m&#xff09;&#xff0c;中间有n个有颜色的格子&#xff0c;只能踩在有颜色的格子上&#xff0c;跳到不同颜色的格子要花费1元&#xff0c;可以将…

别跟我谈EF抵抗并发,敢问你到底会不会用EntityFramework

前言一直以来写的博文都是比较温婉型的博文&#xff0c;今天这篇博文算是一篇批判性博文&#xff0c;有问题欢迎探讨&#xff0c;如标题&#xff0c;你到底会不会用EntityFramework啊。你到底会不会用EntityFramework啊面试过三年至六年的同行&#xff0c;作为过面试者到如今作…

【动态规划】 多米诺骨牌 (ssl 1632/luogu 1282)

多米诺骨牌多米诺骨牌多米诺骨牌 Description Input 输入文件的第一行是一个正整数n(1≤n≤1000)&#xff0c;表示多米诺骨牌数。接下来的n行表示n个多米诺骨牌的点数。每行有两个用空格隔开的正整数&#xff0c;表示多米诺骨牌上下方块中的点数a和b&#xff0c;且1≤a&#…

为什么 web 开发人员需要迁移到. NET Core, 并使用 ASP.NET Core MVC 构建 web 和 API

2018 .NET开发者调查报告: .NET Core 是怎么样的状态&#xff0c;这里我们看到了还有非常多的.net开发人员还在观望&#xff0c;本文给大家一个建议。这仅代表我的个人意见, 我有充分的理由推荐.net 程序员使用. net core而不是. net Framework。有些人可能不同意我的观点, 但是…

【动态规划】 摆花 【NOIp普及组 2012 第三题】 (ssl 2360/luogu 1077)

摆花摆花摆花 题目大意 有n种花&#xff0c;每种花有ai支&#xff0c;取m支&#xff0c;有多少种取法&#xff1f;&#xff08;同一种花取第1&#xff0c;第3支和取第1&#xff0c;第2支算一种取法&#xff09; 解题方法&#xff1a; 用f[i][j]来表示前i种选j支的方案数&…

使用SonarCloud对.NET Core项目进行静态代码分析

本文将介绍如何使用SonarCloud进行.NET Core项目的静态代码分析。SonarCloud是SonarQube提供的基于云的版本&#xff0c;特别针对于开源项目是免费的。首先&#xff0c;在sonarcloud.io创建一个账号&#xff0c;你可以使用Github/BitBucket/Microsoft Live账户进行注册&#xf…

Build 2018,给你带来全新的开发者体验, .NET Core 3.0带来桌面支持

Build 2018 主旨演讲的主题是 Azure 云和 AI、物联网、AR等技术&#xff0c;以及开发者相关内容的宣布。在今天的Build大会上&#xff0c;微软宣布目前已有超过7亿台设备运行Windows 10系统。去年这个数字为5亿。Office 365目前每个月有1.35亿活跃的商业用户&#xff0c;去年为…