对.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,一经查实,立即删除!

相关文章

AT2567-[ARC074C]RGB Sequence【dp】

正题 题目链接:https://www.luogu.com.cn/problem/AT2567 题目大意 长度为nnn的包含三种颜色RGBRGBRGB的序列,mmm个限制[l,r,k][l,r,k][l,r,k]表示区间l∼rl\sim rl∼r恰好有kkk种颜色。 求方案数 1≤n≤3001\leq n\leq 3001≤n≤300 解题思路 很水的题是吧&…

牛客题霸 [字符串变形]C++题解/答案

牛客题霸 [字符串变形]C题解/答案 题目: 对于一个给定的字符串,我们需要在线性(也就是O(n))的时间里对它做一些变形。首先这个字符串中包含着一些空格,就像"Hello World"一样,然后我们要做的是把着个字符串中由空格隔…

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

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

priority_queue+贪心:运输(题解)

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

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

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

P3293-[SCOI2016]美味【主席树】

正题 题目链接:https://www.luogu.com.cn/problem/P3293 题目大意 给出一个长度为nnn的序列&#xff0c;mmm次询问给出b,x,l,rb,x,l,rb,x,l,r表示询问在[l,r][l,r][l,r]中找到一个数字aaa使得bxor(ax)b\ xor\ (ax)b xor (ax)的值最大。 1≤n,m≤2105,0≤a,b,x<1051\leq n,…

牛客题霸 [三个数的最大乘积]C++题解/答案

牛客题霸 [三个数的最大乘积]C题解/答案 题目描述 给定一个无序数组&#xff0c;包含正数、负数和0&#xff0c;要求从中找出3个数的乘积&#xff0c;使得乘积最大&#xff0c;要求时间复杂度&#xff1a;O(n)&#xff0c;空间复杂度&#xff1a;O(1)。 题解&#xff1a; 有…

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

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

codeforces1498 D. Bananas in a Microwave(背包+优化)

D. Bananas in a Microwave issue是fw题解 设计dp&#xff1a; 状态表示&#xff1a;fi,jf_{i,j}fi,j​表示&#xff1a;前iii个操作是否能够凑成jjj。 状态转移&#xff1a;第iii次操作枚举操作次数考虑是否凑成val\text{val}val&#xff0c;如果第i−1i-1i−1次操作也可以凑…

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

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

ARC122C-Calculator【乱搞,构造】

正题 题目链接:https://atcoder.jp/contests/arc122/tasks/arc122_c 题目大意 一个数对开始是(0,0)(0,0)(0,0)&#xff0c;每次可以选择一个数加一或者让一个数加上另一个数&#xff0c;求使得第一个数变成nnn的方案。步数不超过130130130。 1≤n≤10181\leq n\leq 10^{18}1≤…

牛客题霸 [将升序数组转化为平衡二叉搜索树]C++题解/答案

牛客题霸 [将升序数组转化为平衡二叉搜索树]C题解/答案 题目描述 给出一个升序排序的数组&#xff0c;将其转化为平衡二叉搜索树&#xff08;BST&#xff09;. 题解&#xff1a; 二叉搜索树的定义&#xff1a; 二叉搜索树或者是一棵空树&#xff0c;或者是具有下列性质的二…

日志:贪心

排队接水 时间限制: 1 Sec 内存限制: 128 MB 题目描述 有n 个人在一个水龙头前排队接水&#xff0c;假如每个人接水的时间为ti &#xff0c;请编程找出这n 个人 排队的一种顺序&#xff0c;使得n 个人的平均等待时间最小。 输入 第一行为n(1<n<5000)。第二行分别表示第1…

2021“MINIEYE杯”中国大学生算法设计超级联赛(1)zoto(二维数颜色)

zoto Code1 树状数组套动态开点权值线段树 效仿HH的项链&#xff0c;维护右端点&#xff0c;询问需要排序 #include<bits/stdc.h> using namespace std; template <class Tint> T rd() {T res0;char chgetchar();while(!isdigit(ch)) chgetchar();while( isdigi…

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

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

牛客练习赛84F-牛客推荐系统开发之下班【莫比乌斯反演,杜教筛】

正题 题目链接:https://ac.nowcoder.com/acm/contest/11174/F 题目大意 给出n,kn,kn,k求 ∑i11n∑i21n...∑ik1ngcd(fi1,fi2,...,fik)\sum_{i_11}^n\sum_{i_21}^n...\sum_{i_k1}^ngcd(f_{i_1},f_{i_2},...,f_{i_{k}})i1​1∑n​i2​1∑n​...ik​1∑n​gcd(fi1​​,fi2​​,.…

牛客题霸 [旋转字符串]C++题解/答案

牛客题霸 [旋转字符串]C题解/答案 题目描述 字符串旋转: 给定两字符串A和B&#xff0c;如果能将A从中间某个位置分割为左右两部分字符串&#xff08;都不为空串&#xff09;&#xff0c;并将左边的字符串移动到右边字符串后面组成新的字符串可以变为字符串B时返回true。 例如…

震惊!递推与递归竟然可以这么编!%99的程序员都不知道!

四、归并排序&#xff08;逆序对&#xff09; (一)、归并排序 归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法&#xff08;Divide and Conquer&#xff09;的一个非常典型的应用。将已有序的子序列合并&#xff0c;得到完全有序的序列&#xff1b; 即先使…

asp.net core webApi 参数保护

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

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…