写点反对的观点

简单介绍一下背景,前微软拥趸,从c#入门,使用时间从.net2.0到4.5 b/s和c/s都接触过,unity mono也做过游戏项目,windows phone 8时代在appstore的游戏拿过编辑推荐

目前全栈python/js拥抱linux

如果是语言和框架的比较,可以在知乎上看问题的数据嘛,浏览/关注/回答就能看出一个框架的热度

至于提到github上的数据,我是想说,屁股决定脑袋,github的爸爸是微软,给你安排上有毛病吗?

对于学生来说,微软的东西千万别学新的,咱们先不看微软这十来年成功的项目,数数凉了sliverlight/F#/mono/windowsphone全系,哪个开场的时候不是轰轰烈烈,凉的时候凄凄惨惨,学了找不到饭碗,请慎重

对于初级coder,用啥不用啥,在企业还不是leader一句话,各个企业内部大量的历史遗留项目,你打算搞个.net技术栈插进去?你离职了谁维护去?

对于外包/架构师来说,恭喜,你至少对项目的技术路线有决定权,但是现在几乎任何一种通用语言都能完整适配业务需求,但是每一项.net core 都不是最棒的,此外,考虑到招人和长期的维护,参考上文,微软的东西,可能说凉就凉...

当然,怕同行挖墙脚,选.net core没毛病,出去了找不到同业(携代码团队潜逃除外)

对于培训机构,应该是最爱微软的了,天天鼓捣新玩意,恰饭真香,整几套教案,开发个教务系统,帮着美化美化简历就能大几千入账,岂不美哉

最后讲个笔者的亲身经历,之前参与过一场面试,面试者是淘宝的资深架构师,他描述在某知名没跑路P2P公司担任首席架构师职位的时候,最重要的工作就是推进企业整体从.net架构转向java...原因是就是企业初创时图省事,选了.net 后来规模上来了,连mssql的服务器和license都买不起了

提一个日常开发中的苦恼,接入第三方服务的东西里面,包含完整文档和demo里,中小厂支持率就不敢保证了

我的观点就是:围观围观,等大厂出手了再说,别看他们说什么,看看他们做了什么,等aws,阿里云,腾讯云等一票云平台都开始推基于.net core的 serverless 服务里web这边就算稳定了,至于其他的,我用vscode比vs多的多,我觉得轻度的c/s结构nodejs就挺好用了...

———————分割线———————

看到不少知友的评论,准备补充一点个人想法

其实提出反对的原因在于,还是看到一些社会上不太好的现状,首先就是培训机构的人误导,笔者因为工作原因,近几年担任了很多场的技术面试官,什么层级都有,其实对于学生和初级开发者来说,其实要坚信一句话,

“选择比努力更重要”

其实,现在的编程语言已经进入到高度同质化的时代,说在圈里内卷一点都不过分,.net core 在各个领域并未展现出压倒性的优势,于此同时,在职场和工业生产领域,整个微软技术栈,市场份额普遍不高,但是对于培训机构来说呢,他们的屁股就是决定了,他们只是要赚你的钱,你学会了这个,他再教你学新的,你看到了未来(他们给你画的饼),他看中了你的学费,所以,有限的时间,有限的生命,先找到你的目的,要找到工作,要恰饭,要升职加薪,面向人民币编程,就要先了解行业特性,而不是语言特性

求职准备之前,最后先锚定行业和行业龙头企业,混一些开发者群,了解一下龙头企业的技术栈,再有针对性的学习,行业内的秘密

“大多数行业内部产品,都是一套代码的多版本二次开发”

很有可能行业前几名的代码都长的差不多,但八成不是.net core

既然.net core这么容易上手,等项目组里准备换语言了,买本工具书,对着文档用两天就差不多了

强烈建议非cs专业的学生和初级程序员去B站白piao一下cs专业相关本科课程,比交钱的速成班强多了

对于独立开发者/创业公司,更多还是要考虑未来的前景,产品如果爆发了,风投进来了,项目组人员需要急速扩张完成金主爸爸交给的kpi,那个时候考虑的就不是语言优美,而是我到底还需要多少人天的工作量

实际情况是,大多数情况下语言无关

———————分割线——————

今天早上接了一个外企猎头的电话,不知道是上哪翻出我好多年前的简历,随便扯了一通,上海特斯拉,了解到他们确实有在用 .net core (并非全部,java和golang栈多一点)和楼下评论区一位外企朋友的说法比较吻合,上图

不过有几个点 大家看看吧

Experience with docker and kubernetes

估计也都上了全套的devops了吧,那就说明基本上全生产环境都在linux下了,emmm...

结合微软最近出的wsl...

打个比方...苹果为了兼容安卓应用,在某代ios里嵌入了安卓内核,可以直接安装apk并运行应用,估计下面评论就是

苹果药丸吧

好好学.net core吧 .net framework就靠你传承了

其他还有一家 好像也是新加波的一家制造型企业需要.net core 其他的目前没听说,有了再更


看到评论区有小伙伴提到财付通的 net core的问题

我不认识财付通里的人,但是我在知乎用站内搜索搜了一下结果...

emmm...结果果然很有趣

首先这是应该是17年的旧闻了...技术这种东西变化速度很快...17年到20年,说不定当时推动用net core人都离职了也说不定(纯个人推测)

然后在知乎宣传这件事的人是谁...嗯 一个培训机构...卖课的...屁股决定脑袋...大家自己想想吧...不愿意搜结果的 我放几张图 大家慢慢品






8月29号更新

最近接手了一个.net core项目,也算是正式上手了.net core的东西,这个项目用到了

整个项目还在评估中,不过看了一眼Blazeor的写法就给我看乐了,第一印象就是,哎这套路咋跟php那么像,php我接触的不多,用过一小段时间的yaf,这不就是代码文件套模版么,好像似乎又回到asp那个时代的老路了,不过这回好在对于不太爱写javascript的小伙伴们开心了,可以C#一站到底了,等项目评估以后再更,事情越发向有趣的方向发展了

9月13日更

项目上线应用了一段时间了,net core的使用方式出奇的容易入手...不过,这不是啥优点...明显感觉微软这次真的是祭出的腾讯的大招,打不过就copy他,从项目构建到运行,基本上跟java的spring boot和nodejs的项目流程差不多,不说谁参考谁,反正net早期那套可视化的流程基本都摒弃了,不过nuget真不给力,我用的vscode,引用一个redis的三方库,居然报版本号错误,还要特意去修改vscode里nuget插件的源码才能解决,呃,开源的ide就是充话费送的孩子么?

此外,人生苦短,我用python,c#和java真的回不去了,具体表现就是,经常少写包裹语句块的大括号,还有结尾的分号,嗯,写了几年python发现真的少打了很多字

这次接手net core的项目也只是在不重复造轮子的前提下,尽量把已有的项目整合进现有系统,net core项目表现ok,只是感觉微软泯然众人矣