程序员的职场招聘中,为何C# 和 .NET不像其他种类那么受欢迎?
发布日期:2018-04-18   浏览量:5408 次

苏州网站建设C#.net确实没有Java/Python/go受青睐,归根结底还是生态问题。

1.语言特性

C#非常容易上手,微软为它提供了号称宇宙最强IDE”visual sudioC#的语法也十分凌厉,lambda表达式,轻松描述复杂逻辑,在操作链表数组等方面,C#提供了丰富的扩展库,让算法小白也能轻松完成业务复杂的开发任务。

Java就不同了,虽然后续支持了lambda表达式,但使用便捷性还是比C#差了不少,写个排序还得实现Comparable接口。springJava应用最广泛的框架,其配置项目也比C#.net复杂不少,可以这么认为:C#.net是以契约为基准的,而Java则大都依赖配置。所以你想搞懂原理,就得踏踏实实地学习配置原理 和其他基础知识。

2.开源

这可以说是Java生态超过C#.net最关键的因素。现在.net framework也已经开源,但Java的生态气候已成,.net再怎么穷追猛赶,也难以超越。用Java技术栈的公司,遇到问题后,基本都可以在网上找到解决方案,国内没有就翻墙去国外找资料,总能解决。

C#.net的各类资源则较少,程序员知名网站github上,Java项目数量几乎碾压C#的项目数量。

3.成功案例

这条原因也间接解释了Java很难被超越的原因。企业在技术栈选型时,会重点考虑一项技术的成功案例数量。Java在开源社区的支持下,经营数年,各种疑难杂症都有现成的解决方案,这也导致使用Java的企业越来越多,甚至一些初创时使用C#.net的公司,后续都会选择转Java,以获得Java生态圈丰富的技术储备。马太效应,愈演愈烈。

4.授权费

C#语法优美,visual studio号称宇宙最强,名副其实,然而这一切都不是免费的。C#.net程序基本职能运行在微软的系统和应用容器里,微软对企业级应用都有不菲的授权费用,很多小公司为了规避授权费用,都会选择Java,并使用开源免费的linux服务器程序。这无形之中也帮助了Java生态圈的成长。

5.跨平台

早起C#.net程序并不能做到跨平台,微软曾通过.net frameworkC++/C#/VB等能够实现一次编写,多处运行,然而始终没能跳出windows系统这个圈子。即便有人通过monolinuxmac系统具备运行.net程序的能力,但也很少有公司愿意将其商用。

Java的跨平台则是出了名了,Java程序运行与JVM虚拟机,但凡能装虚拟机的系统容器,Java程序都能运行无阻。


以上这些原因,让C#不如Java受欢迎。但还是要夸赞下C#出色的语法设计。两个阵营的争端已经有数年不止,再争也毫无意义。对于初学者,苏州网站建设推荐先学习Javapython


分享:
上一篇:3月份最热门JS开源项目排行
下一篇:受互联网严重冲击,实体店未来发展的结果究竟会怎样?

 
首页
咨询