对.NET Core未来发展趋势的浅层判断

 经常听到园里.NET开发人员在抱怨生态不如JAVA,想要转JAVA,所谓打不过你,我就加入你!杜兰特的思维方式固然是获取总冠军的一种方式,但是我们要关起门来问自己有没有杜兰特的实力。

  用开发生态来类比NBA不是特别恰当,因为NBA只有一个总冠军,但是开发生态一枝独放不是春,百花齐放春满园。我个人觉得做.NET生态的一员,完全没有必要自卑,而是应该感到荣幸,随着你认知的不断深入,你完全可以拥抱其他生态,自成一家。如果你实在觉得JAVA或者.NET不能满足你的需要,你也可以考虑GO或者Python。你转来转去,付出巨大的代价,最后薪资不见得每个月会增加多少,可能在你转化的过程中,你还损失了不少。

  存在即是合理,我试着从自己的有限经验来对.NET Core未来做一个武断:我觉得.NET Core对其他生态不会构成什么威胁,.NET Core会给人家多个一个选择,所以新人和新公司的大部分,旧人和旧公司的小部分会被吸粉,但是大的方面不会有什么变化。不会像人说的那么好,也不会差到哪里去。但是.NET Core会因为微软这个巨人的重新崛起,而名声鹊起。

历史底盘

  从就业面来看,.NET主要集中在中小企业(私企),部分外企,部分国企,特别是传统做OA,MES,CMS,WMS,ERP等企业有很多的用户,由于微软的先行者优势,这类企业占比非常高,应该说是金字塔的底端,而且目前PC端还是Windows的天下。另外因为微软本身就是从2B起家的,而且在2B特别是Office和Windows这块依然是一个巨大的平台,这么大的一个平台大到你无法想象,所以围绕平台的生态自然不会消失,资源和营养也不会低下。

  从巨头的体量上来说,如果说微软,亚马逊,Google,Facebook是马刺,勇士,湖人,顿凯尔特人等传统豪门,BAT则更像是游离在豪门外的火箭,雷霆,快船,猛龙,步行者等一众边缘球队,虽然总冠军也有,但是整体实力跟豪门差距巨大。而BAT之外的虾兵蟹将等企业其实都不是绝对的安全,你去也好不去也好,你都不是一个足够你依靠的大树。

  如果说易经是群经之首,那么老子,孔子,墨子,庄子莫不受其影响和恩泽。就像是C是C++,JAVA,GO,C#等一切语言的鼻祖,微软对谷歌,亚马逊,BAT的影响也十分深远。很多大牛从微软亚洲研究院出来的,你可以从李开复,陆奇,张亚勤等代表人物身上看到微软的影子。

开源生态

  微软内部技术兼容并包,早已不是局限在语言和平台的矛盾,随着.NET Core拥抱开源和微软收购GitHub,微软不断在向开源纵深发展,而且有些地方更加的彻底。如此一来,大伙多了一种选择,好比在淘宝可以开店,在京东也行,甚至小程序都可以做微商,为什么要吊死在淘宝这棵树上。所以,.NET生态必然会稳中求进,虽然对其他的生态没有什么威胁。但是,别忘了,云可是一个比语言,比生态,比Window比Office更加庞大的生态。如果说语言和语言相关的生态是一个湖泊,那么云服务和相关的云计算,云技术,AI等内容,云生态就是一个大海。

  开源只是开始,更重要的是思想的转变。也就是说你不管用的什么语言什么平台,请你到我的云平台来,到Azue来,我都像大海一样海纳百川,就品牌和国际化程度来看,阿里云和微软显然还有一些差距,或者说总体上还是弱一些。从这种开放程度来看,微软从2000多亿美金到8000多亿美金,背后释放的能力还是十分巨大的,必然会网罗一份拥趸和粉丝。

  我们再看一下下面这段话:“.Net Core 开源后取得了更加快速的发展,目前越活跃用户高达400万人,每月新增开发者45万,在 GitHub 上的月度增长达到15%。目前有来自超过3,700家企业的1.9万开发者在为 .NET Core 做贡献,.NET 基金会管理着超过60个项目。.NET Core 为开发者提供了跨平台、云原生应用的理想开发平台,特别是即将发布的 .NET Core 3,能够全面支持从网页到云端、桌面、物联网、人工智能的全方位的跨平台部署。在大会现场,微软演示了 Windows 桌面在 .NET Core 3.0上运行的情况,充分展现了将其用于未来开发环境的无限可能。“——潘正磊在上海的Tech Summit 2018 大会上的原话(引自张队长的链接)。

  所以我的判断是,如果你觉得没有精力和年龄去转JAVA,那也不用紧张,因为你的地盘还是稳中有进的。只是你别停止学习跨平台和开源等新技术,因为开源意味着生态的更加多元和多样,而你怎么可能躺着就把钱赚了?而且你学习的新东西,转到JAVA生态下可能付出的时间和精力是双倍甚至三倍的。如果技术不是你的全部,你还有身体和孩子和创业,那么为什么不把时间花在更加重要的地方去,比如去学习经济学和文学?如果你希望进入微软工作,那么.NET Core平台也是需要了解。

  640?wx_fmt=png

全家桶

  微软家也有SPRING一样的全家桶式的东西。比如.NET战略里面的相关技术栈,就是你用了.NET技术栈,你几乎什么都可以做,先不说做到的程度,至少桌面WinForm开发全家桶/Web开发全家桶/移动跨平台(Xamarin全家桶)/云服务(.NET Core微服务全家桶)等东西他都能给你一个选择。从这次.NET Core对IOT的支持来看,微软的IOT全家桶也已经出来了,这个好处必然也是吸粉的一部分。因为放眼JAVA,PHP,C,C++,GO都没有看到一个像.NET一样这么的全能的人。.NET就像是一个表现很全面的三好学生,各方面都很均衡,但是不见得毕业后能做一个特长生。

  另外说一下,SPRING等杀手级的框架外,其实JAVA开源的东西很多是野路子,没有微软专业,给你一步到位,所以对微软的东西叫产品,对开源的东西只能叫项目,因为坑太多了。现在微软的开放是以带头大哥加社区方式在助推,JAVA则是以BAT和社区等力量在助推,在开发的程度和产品的质量来看,微软可以更加高效的集中力量办大事,.NET使用者还是能感觉到明显的性能和效率和生产力。比如泛型,委托,隐式类型推导,异步编程,多线程并发编程,函数式编程,Lambda表达式等语法糖,微软推出的速度就像国家造路建桥一样有自身垄断的优势。我有个感觉垄断加开源会所向披靡,只有垄断等于是闭关锁国,只有开源质量和效率都没能保证,只有两者强力的组合才是王道。

  640?wx_fmt=png

 

 总结

   最后我想说尽管.NET Core做了一件JAVA看来很落伍的事情,但是也没有必要嘲笑,因为微软在下一盘更大的棋子,而开源跨平台只是顺便的一件事,未来的AI和云服务布局才是王者的必争之地。所以,原来写JAVA继续在写JAVA,写Python或者C,C++的一样跟没事一样,在耕耘着自己的一亩三分地。写C#的一样可以坦然以对。

  关于.NET Core新平台未来发展文章:

  • .NET Core: .NET of Future or Future of .NET?

  • What Is The Future Of .NET Core?

  • .NET Core:新的快速开发平台

  • 知乎上的讨论帖子.Net core现在可以做什么?未来发展有前景吗?

  • 探讨.NET Core的未来

  • .NET Core跨平台

  • 等待与希望,.NET Core 的发展壮大


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

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

相关文章

2021牛客暑期多校训练营1 H-Hash Function(数学+FFT)

H-Hash Function Shining_xzl大佬题解 本题答案符合题意的充分必要条件是:不能是任意两个数的差以及他们的因数,因此只需用用FFT求出这些数的差,记为差的集合。 从小到大考虑一个答案,以及答案的倍数是不是上述差的集合&#x…

priority_queue+贪心:运输(题解)

解析 不难发现每次都应合并最大的一对,从而使局部最优带动整体最优 sort就会很自然的想到 但是问题是合并完之后的新值可能已经不是当前最大了(WA。。qwq) 于是想到每次循环sort一遍,结果n^2logn又超时了。。。 在一位高人的指引…

【话题揭秘】某大型国有银行的敏捷落地实践

“某大型国有银行的敏捷落地实践”话题介绍银行行业是强烈依赖IT的非IT行业,传统金融要想打破现有局面,除了要解决外因,还要突破内部因素,其中一点就是技术重塑和战略手段,也就是常说的数字化转型,这也是经…

震惊!温州一程序员编完八皇后吐血而亡,他的代码是什么样子?!!

解析 经典大法师(dfs哈哈哈) 比较关键的是每条对角线上点的坐标之和或差是相同的,故可以用一维数组存储其状态 这题一开始用了双层循环,卡掉了4个点qwq 后来发现其实因为每行只有一个皇后,每次单层循环枚举j就可以实…

直播视频发布:Windows上的Linux容器和Azure混合云中的Kubernetes(k8s)

如果你还没有开始关注容器,那么你已经out了;如果你还在单机上运行容器,那么你out了。经过2013到2018年5年的演化,分化和进化;容器,Docker和Kubernetes已经是任何一家企业的IT解决方案都不能忽视的重要趋势。…

通过Microsoft Learn进行学习以提升技能

通过 Microsoft Learn,可以免费而且轻松有趣地学习 Microsoft 技术。Microsoft Learn的与众不同借助 Microsoft Learn,任何人都能按自己的学习计划和速度掌握重要的知识和概念。 使用者将能够访问培训资料、代码示例,以及免费试用产品。无论是…

asp.net core webApi 参数保护

Introasp.net core data protection 扩展,基于 IDataProtector 扩展的数据保护组件,自动化的实现某些参数的保护ParamsProtectionParamsProtection 是为了保护 asp.net core webapi 项目的某些参数而设计的,也可以用来做一定程度上的反爬虫。…

2021牛客暑期多校训练营2 J-Product of GCDs(数论+计数)

J-Product of GCDs Code1 对于每个质数以及每个质数的次幂单独考虑他们的贡献&#xff0c;由于多次使用快速幂导致TLE #include<bits/stdc.h> using namespace std; using lllong long; template <class Tint> T rd() {T res0;T fg1;char chgetchar();while(!is…

新汉诺塔(洛谷P1242)含第11个数据的解决办法

解析 应该从大到小一个个移&#xff0c;这样后面大盘就可以直接忽略&#xff0c;保证没有冗余操作&#xff0c;必定最优&#xff08;如果先移动小的&#xff0c;后面移动大的时还要动小的&#xff09; 对于第id个从当前位置到目标的移动有两种移动方案&#xff1a; 法1&#x…

让 .Net 更方便的导入导出Excel

Intro因为前一段时间需要处理一些 excel 数据&#xff0c;主要是导入/导出操作&#xff0c;将 Excel 数据转化为对象再用程序进行处理和分析&#xff0c;没有找到比较满意的库&#xff0c;于是就自己造了一个轮子&#xff0c;屏蔽掉了 xlsx 与 xls 的差别&#xff0c;屏蔽了 Np…

P7115-[NOIP2020]移球游戏【构造】

正题 题目链接:https://www.luogu.com.cn/problem/P7115 题目大意 n1n1n1个柱子&#xff0c;前面nnn个上面各有mmm个球&#xff0c;球有nnn种颜色&#xff0c;每种mmm个。 你每次可以把一个柱子最上面的球放到另一个上面&#xff0c;要求在820000820000820000次内使得同种颜色…

无限序列 (ybtoj C.3)

解析 乍一看很蒙的题 首先&#xff0c;a-b1的个数可以等价于**&#xff08;1-b&#xff09;1的个数减去&#xff08;1-a-1&#xff09;1的个数** 分析之后发现&#xff0c;经过多次变换后&#xff1a; 长度 1的个数 1 1 2 1 3 2 5 3 8 5 … … 又是熟悉的斐波拉契。。。 但是我…

2021牛客暑期多校训练营2 L-WeChat Walk(分块)

L-WeChat Walk 每个大点记录一下邻接点的最大步数 每次修改的时候&#xff0c;枚举修改点的邻接的大点来更新 修改大点的时候直接判是不是比邻接点都大 代码抄的std好不容易才看懂~ Code1 #include<bits/stdc.h> using namespace std; template <class Tint> T…

二分算法:平均值(洛谷 UVA1451)

解析 这道题寻找平均值的max&#xff0c;答案明显具有单调性&#xff0c;所以采用二分算法 从0到1不断取中点mid作为平均值的可能点&#xff0c;看是否存在不短于l的数列均值&#xff1e;mid不难得到以下代码&#xff1a; double st0,ed1;for(int i1;i<10;i){double mid(s…

Asp.NetCore依赖注入和管道方式的异常处理及日志记录

前言在业务系统&#xff0c;异常处理是所有开发人员必须面对的问题&#xff0c;在一定程度上&#xff0c;异常处理的能力反映出开发者对业务的驾驭水平&#xff1b;本章将着重介绍如何在 WebApi 程序中对异常进行捕获&#xff0c;然后利用 Nlog 组件进行记录&#xff1b;同时&a…

字符串:凯撒密码(洛谷P1914)

解析 只需将每一位ascll码加n即可 但要注意的是c的ascll码是有上限的 我一开始是这么写的&#xff1a; for(int i1;i<l;i){s[i] n;while(s[i]>z) s[i] - 26;printf("%c",s[i]);}结果&#xff1a; (真的是随便打的&#xff0c;不巧有些攻击性。。&#xff0…

.NET Core实战项目之CMS 第四章 入门篇-Git的快速入门及实战演练

写在前面上篇文章.NET Core实战项目之CMS 第三章 入门篇-源码解析配置文件及依赖注入我带着大家通过分析了一遍ASP.NET Core的源码了解了它的启动过程&#xff0c;然后又带着大家熟悉了一遍配置文件的加载方式&#xff0c;最后引出了依赖注入以及控制反转的概念&#xff01;如果…

高精度:麦森数*(洛谷P1045)

P1045 [NOIP2003 普及组] 麦森数 解析 看似只是正常的一个高精 然而 暗藏杀机 一开始随手那么一写 。。。 (即使用了快速幂)时间复杂度过于感人 后来我们发现&#xff1a; 第一问位数的计算不必真的算出来&#xff0c;只需把2的p次幂转化为10的k次幂即可&#xff08;具体请…

彼之蜜糖,吾之砒霜——聊聊软件开发中的最佳实践

“描述一个事物&#xff0c;唯有一个名词定义它的概念&#xff0c;唯有一个动词揭露它的行为&#xff0c;唯有一个形容词表现它的特征。要做的&#xff0c;就是用心去寻找那个名词、那个动词、那个形容词……”—— 福楼拜 (Gustave Flaubert)我想讲个故事。很久很久以前&#…

贪心: Array Splitting(数列分段)(洛谷CF1175D)

解析 这题可以转化一下&#xff1a; &#xff08;《神笔马良》。。。。&#xff09; 计算这些长方形对应下标的总加和 我们可以一层一层往上垒,假设第i层起始点为xi&#xff0c;总和为sumi&#xff0c;再设从1到i的前缀和为si 显然第一层x11&#xff0c;sum1sn 对于第二层x2&…