为什么很少人学c#?针对这个问题,今天小编总结这篇有关c#的文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。
目前创新互联已为上1000+的企业提供了网站建设、域名、网页空间、网站托管、服务器租用、企业网站设计、临渭区网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
C#由编程界的神级人物AndersHejlsberg主持规划,在许多方面都比JAVA要好,毫无疑问,它是一门非常好的计算机言语。可是,一门程序言语的开展不是靠某一家公司或某几家公司就能撑起来,而是要靠主推公司的战略开展及生态的促进,C#则却刚好在这两点不占优势。
首要来说C#在言语的开展过程中所失去的良机。
榜首,C#跨渠道政策的失误
C#开始只能在Windows渠道上运转,从PC互联网年代向移动互联网年代转化过程中,C#并没有像JAVA相同做出习惯性的转型,以至于C#无法运转在安卓机器上。
Windows渠道简单易用,关于技能人员不多的非IT类中小企业,的确是有吸引力的。可是关于硅谷的IT企业来说,技能并不是问题,他们具有大量的专业服务器办理人员,所以硅谷的IT企业更倾向于运用免费的Linux体系,比方CentOS或者Ubuntu。
牵一发而动全身
免费的Linux供给了相当完善的服务器运转环境及一整套东西链,比方Apacheweb服务器,MySQL/postgresSQL数据库,Memcache、redis缓存服务器等。尽管在办理的直观性上,Linux好像比Windows的窗口化图形化界面要落伍一点,可是性能上不相上下,乃至更加出众。所以尽管配置更加繁琐,更多的公司仍是挑选了Linux体系作为服务器操作环境。而C#在Linux下面基本没有用武之地,这就大大限制了C#这门言语的盛行程度。
尽管后来C#迂回推出了Xamarin,还免费开源了,可是现已失去了最好的移动开发时机,就像是微软自己的WP手机操作体系没有抗衡过苹果和安卓相同,在移动开发范畴C#也相同失去了移动互联网的年代。
第二,C#仿JAVA而生,大数据及人工智能方面却没能逾越JAVA
C#的最大的竞争对手——JAVA,实际上算得上是C#的爸爸。JAVA诞生于1995年,它的一次编写、到处运转的概念,掀起了一场革新。而C#诞生于2000年,是微软.Net方案的一部分,是微软为了代替JAVA而研制的。
换句话说,C#是能够被代替的。C#与JAVA在语法和架构上非常接近。C#能做的,JAVA也能做。并且JAVA自身便是为跨渠道规划的,比C#更具有灵活性,在Linux下面有很好的支撑。在库支撑方面,JAVA也要比C#好的多。在Windows上面可能会有一些不错的C#库,可是几乎无法在Linux/.Netcore下面作业。
而从传统开发到大数据及人工智能开发的转化过程中,自谷歌的Hadoop呈现以来,大数据的开发言语好像天然便是JAVA一般,尽管Hadoop同时供给多种言语的接口,可是因为底层JVM的结构运转,使得JAVA言语在大数据年代远超C#,而人工智能的开展及对数据处理的需求,又使得Python赶超C#,成为数据处理的神器,以至于时常要拥抱变化的程序员更多的投入JAVA和Python的怀有。
尽管微软为了习惯大数据年代的到来,供给了许多东西库供C#编程人员更好的与Hadoop渠道协同作业,但不可否认JAVA的正统性和便利性使得C#的地位在大数据年代被日益边缘化。
其次咱们要说,C#的关闭性也是让它失了人心的重要原因。
榜首,因为C#运转环境的关闭性,导致了C#言语被限制在Windows渠道。
在微软总裁纳德拉之前,微软对Linux及开源软件界采取了仇视的情绪,比尔盖茨曾痛斥开源软件为病毒,自然也拒绝为Linux体系供给软件支撑。同时,微软将C#与Windows体系、IIS服务器、MSSQL这些东西软件深度捆绑。假如你想用C#,则有必要购买微软的体系、数据库等全家桶,这些费用和纠缠让硅谷的IT感到非常不爽,无形傍边形成了一股反微软的潮流。
windows服务器授权费用解析
等微软意识到自己在硅谷的新式公司中现已被边缘化,开始想与Linux等开源软件和体系合作,使C#在Linux上运转时,硅谷却早已形成了自己的开源作业软件生产气氛:完善的技能栈,社区及学习环境,换句话说硅谷基本不需要C#了。所以说,在运转环境上的关闭性导致了C#的没落。
第二,因为开发环境的关闭性,导致了C#言语开发成本高昂。
C#开发不只依靠Windows体系,并且严重依靠VisualStudio开发渠道,别的,因为选用了C#,数据库开发不可避免的要涉及到SQLServer数据库,最为致命的是,这些都是收费的,并且微软的产品都挺贵,IDE要收费,数据库之类的要收费,对公司而言这是一笔不小的开支,因此许多大公司会因为成本问题挑选抛弃C#。假如采用Linux+Eclipse+JAVA的开发环境,完全能够用免费的方式解决,这是C#面临严重的开发环境关闭性问题。
来看一下硅谷一般IT公司代表的技能栈:
Uber的技能栈
Facebook的技能栈里相同也没有C#的影子
第三,因为社区的关闭性,导致了C#的运用体验不那么夸姣。
目前来看,在大数据年代降临之际,跟着Python开源社区的开展,JAVA开发社区的开源也更加壮大,可是C#却依然是闭源的,在当今服务至上、体验至上的年代,闭源的思想没有及时改动,就被年代所筛选了。
硅谷主要IT公司言语与结构技能栈最新排行榜:前十名里边没有C#的位置
没有公司运用,就不会有人学习,没有人学习就不会有人招聘,这是一个鸡生蛋、蛋生鸡的问题。
综上,C#是一门优秀的言语,因为开展初期失去良机而没有形成趋势、产业链及好的学习气氛,可是跟着微软对开源社区的改动及合作情绪,采用C#的公司数量也开始逐渐增多,特别是U3D的热潮,或许会进一步推进C#的遍及。相信跟着时刻的推移,C#或许能在硅谷的IT公司中具有一席之地。
关于很少人学c#的原因就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。