本文摘自PHP中文网,作者hzc,侵删。
c#用的人很少是因为:1、C#开始只能在Windows渠道上运转,并没有像JAVA相同做出习惯性的转型,导致无法运转在安卓机器上;2、C#仿JAVA而生,大数据及人工智能方面却没能逾越JAVA。
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# windowsapi应用之getdesktopwindow-获得桌面所有窗口句柄的方法详解
更多相关阅读请进入《C#》频道 >>
C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。