首页 新闻 会员 周边 捐助

如果微软早早的推出类似.net core这样的跨平台语言,.net程序猿还会出在这样的尴尬局面吗?

0
悬赏园豆:10 [已解决问题] 解决于 2019-05-25 08:43

众所周知,现在好多大厂都从.net转到java,都认为.net是比较low的语言。很多主流的开源框架,开源项目大部分都是java做的,比如es等,,,,作为一个有三四年开发经验的.net程序猿,很想和大家讨论一下.net将何去何从

☺我命由我不由天☺的主页 ☺我命由我不由天☺ | 初学一级 | 园豆:84
提问于:2019-04-28 19:40
< >
分享
最佳答案
0

我觉得不会
java有今天的位置,很大程度上是巨头之间角力的结果,当老大的总是被其他势力攻击的对象,或明或暗。当时微软其实已经处于众矢之的了,而微软的态度是对抗而不是合作,你不让别人吃饭,别人肯定千方百计的想办法来拆你的台,linux的出现让其他企业看到了一丝希望,但单靠liunx和windows对抗实在是有些力不从心,但很快第二个机会来了,java出现了,你说,这些企业能放过这种机会吗,那可不得使劲儿扶持。
上面说的是以google为首的国外的这种大型互联网公司的心思,我们暂且将他们称为第一梯队。
那我们再来看看,以中国BAT为代表的第二梯队的互联网公司为什么更愿意用java而不是.net,有人可能要说是因为.net环境授权费太贵,也有人说是.net技术人员水平不如java的高,其实这都不是重点。重点在于,这些公司一方面也有和google这种超大互联网公司的顾虑,另一个最重要的原因就是一家有理想、有抱负的科技公司不可能让自己最重要的战略决策被其他公司牵着鼻子走或左右,至少要将这部分影响降到最低。.net最大的优势也是最大的缺点在于,它一家独大的生态圈,没有这类企业所需要的相对独立的小的生态圈。没有这种相对独立的小的生态圈也就意味着,你微软升级我就得跟着升级,你微软做技术转型,我也得跟着转,你微软说2003/xp过时了,我就得在一两年内把所有的服务器都换一遍,谁TM受得了。
这是.net最致命的缺点,别说大企业了,就是小企业甚至一些个人开发人员都经不起微软这样一次又一次的折腾的。其实.net刚推出时还是很火的,支持的用户也很多,但都在微软一次又一次的折腾中走掉了。对很多公司或开发人员来说,微软有时真的就是一坑货,nokia大家还记得吗?
综上,只要.net这种大生态不改变,即使.Net Core开源了,跨平台了也干不过java
有人可能要说,你如此看衰.net,为什么还在用.net开发而不转java呢?
首先,我只是一名技术,我不开公司,我没有开公司的这种种顾虑。
第二,我虽然在生活中不是喜欢折腾的人,但在技术上我还是非常喜欢折腾的。微软是一家非常有创新能力的公司,因为创新必然要不断折腾,技术本身就是一个不断试错的过程。有创新必然就会不断淘汰,也要在发现走偏了或错了的情况下突然急刹车,急转弯。
第三,我更喜欢微软的开发理念,我觉得微软是一家有格局、有野心的公司。
微软的目标客户从来都是瞄准全世界所有人,让全世界所有人都能用上微软的产品,这种不抛弃用户的行为是非常难得的。要服务所有人或让所有人都用能用上自己的产品,其中必然有相当大一部分人你在他身上是榨不出一丁点油水的,即使能榨出来一点儿也少得可怜,基本上可以说是无利可图的。但微软没有放弃这类客户,要知道这样做难度大,风险高,而且是很不讨好的,稍不注意还会被带上垄断的帽子。当然,不能因此就说微软就是一家良心企业,慈善机构,大公无私,全心全意为人类服务了,要知道资本还是逐利的,但起码可以称上是一家伟大的公司。要知道除了微软外,没有第二家公司不挑客户的,它们都有着明确的目标人群,针对的就是一类人或一群人,因为只有这样,利益才能最大化。正因为微软公司有着这种大的格局,所以微软的开发理念往往更加全面,更加先进。
可以肯定的是,未来软件开发的发展方向一定是朝着外部简单化,内部复杂化,覆盖全面化的方向发展。
什么意思呢,就是未来的软件开发的门槛会越来越低,简单化、傻瓜化甚至自动化,但是软件内部的逻辑会越来越复杂,语法糖那只是小KS,更多的代码逻辑可能还是AI化。最后一点,覆盖全面化并不说,我做一个软件产品一定要让所有人都能用,不是这样的,这里说的全面化是指以后的软件一定是更加细致化,那怕是一些很细微的很少很少情况能用到的功能都应该提供到(当你想明白这些的时候,你还会认为WinForms/WebForms这种拖控件的方式很low的行为么?恐怕更多的是遗憾吧,这东西太超前了有些生不逢时)。
当然,这样做也不是一点坏处都没有的,而且还非常明显,容易将简单的东西复杂化了,越复杂越容易出bug,用户体念也不能达到极致,而且会造成成本上升、性能下降。但是,这些新生事物发展过程中必然要经历的阶段,“不用马拉的马车”很有可能就是未来。
说了一大堆空话,套话,下面来说说最实在的东西,工资呢?
很遗憾,.net的开发人员真的处于技术人员鄙视链的最低层,我所了解的,所经历的公司.net开发人员基本上在公司的地位别说比Java、前端、安卓、IOS、设计这些热门职位了,就是搞php、ActionScript、Delphi、C++/C这种不那么热门的职位也只有仰视的份。在公司工资方面除了比前台小妹、普通行政人员工资高点外,其他的都比不上。
但是,我依然不会轻易转行,因为我工作不完全只是为了工资,更多的是我感兴趣,我喜欢,我愿意而已。我发现有很多开发其实对技术并不感兴趣,都是被迫来做或为了追求高工资而来的,对于这样的人,我不作评论,人各有志嘛,但我还是有一句良言相劝,出门左转有Java/安卓/IOS,右转有Javascript/nodejs,直行有python,那个赚得都比搞.net的多,在公司地位还高。
第四嘛,当初java和.net二选一时选.net其实是因为英文不好,.net的中文文档全面啊,后来嘛完全是习惯问题了,被Visual Studio绑架了,这才是开发工具该有的样子嘛,其他那些都是些什么玩意儿嘛,基本上都是一个半残品,还吹得神乎其神的。
最后再说一句,虽然我使用C#,但我并不认为java/C#这种语言就代表未来,未来流行的编程语言一定是另一种新的语言,一种混合型的语言,单纯的强调面向对象,一切皆对象完全是扯蛋。目前看来go语言已经初步具有了这种特征,但go要走向流行或能不能走向流行还不太确定,个人认为go语言最大的缺点可能也是有走极端的趋向。
哎呀,妈呀,一不小心码了这么多字,是不是放假太闲了

收获园豆:10
Adming | 初学一级 |园豆:119 | 2019-05-01 20:04
其他回答(6)
2

没什么区别.
.net的将来肯定会比java好.原因和中国现在快要赶上美国是一样的道理.
在初期阶段.确实民主的自由的环境会让发展速度特别快.
但到一定程度后.就会爆发出混乱的结果.后面的发展确是需要在强有力的中央控制下.才能持续.

吴瑞祥 | 园豆:29449 (高人七级) | 2019-04-28 22:49
0

以我在武汉的观察,现在招个高级.net贼难,本来人就少,一些牛逼点的还转了Java,所以你懂我的意思了趴。
现在core出来了,性能上已经不输,就差造轮子了。

顾星河 | 园豆:7290 (大侠五级) | 2019-04-29 09:00
1

.net和java都是面向对象语言只是个工具,两者非常类似,理解了框架常用的开发模式思路,花些时间就可以学习,有心学习就没有什么何去何从的心态

慧☆星 | 园豆:5722 (大侠五级) | 2019-04-29 09:43
0

NET CORE 完全是一个测试品, 大公司不敢用, 小公司可能会用, 但用的人不多, 主要是开发环境不好。

Java做大平台, 有很多熟悉的框架。 像阿里, 百度, 腾讯这些, 人家核心全是java, 你认为人家会推掉重来吗

别相信NET CORE能让你赚到大钱, 学习它还是要的,

主力还是放在Java上面吧, NET就算你是高手, 顶多就是二万块一个月, JAVA如果你是高手, 至少十万以上

风浪 | 园豆:2996 (老鸟四级) | 2019-04-29 09:45
0

我觉得还是环境导致的,就像大家都是说中文,你说英文肯定行不通啊,国内都在一窝蜂学java,而且专家也都是java的,那net就是小众了,个人觉得语言没有好坏(性能暂且不说),就看流不流行吧,我觉得微软要把net做到深入人心,必须下更大的功夫,不然就做到更好

刘下来 | 园豆:919 (小虾三级) | 2019-04-29 10:07
0

没有如果 接受现状
服务端这块java和go的天下

ycyzharry | 园豆:25683 (高人七级) | 2019-05-05 10:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册