c#用的人很少是因为:
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#》
以上是c#为什么用的人很少的详细内容。更多信息请关注PHP中文网其他相关文章!

如何使用C#编写时间序列预测算法时间序列预测是一种通过分析过去的数据来预测未来数据趋势的方法。它在很多领域,如金融、销售和天气预报中有广泛的应用。在本文中,我们将介绍如何使用C#编写时间序列预测算法,并附上具体的代码示例。数据准备在进行时间序列预测之前,首先需要准备好数据。一般来说,时间序列数据应该具有足够的长度,并且是按照时间顺序排列的。你可以从数据库或者

如何使用Redis和C#开发分布式事务功能引言分布式系统的开发中,事务处理是一项非常重要的功能。事务处理能够保证在分布式系统中的一系列操作要么全部成功,要么全部回滚。Redis是一种高性能的键值存储数据库,而C#是一种广泛应用于开发分布式系统的编程语言。本文将介绍如何使用Redis和C#来实现分布式事务功能,并提供具体代码示例。I.Redis事务Redis

如何实现C#中的人脸识别算法人脸识别算法是计算机视觉领域中的一个重要研究方向,它可以用于识别和验证人脸,广泛应用于安全监控、人脸支付、人脸解锁等领域。在本文中,我们将介绍如何使用C#来实现人脸识别算法,并提供具体的代码示例。实现人脸识别算法的第一步是获取图像数据。在C#中,我们可以使用EmguCV库(OpenCV的C#封装)来处理图像。首先,我们需要在项目

如何使用C#编写动态规划算法摘要:动态规划是求解最优化问题的一种常用算法,适用于多种场景。本文将介绍如何使用C#编写动态规划算法,并提供具体的代码示例。一、什么是动态规划算法动态规划(DynamicProgramming,简称DP)是一种用来求解具有重叠子问题和最优子结构性质的问题的算法思想。动态规划将问题分解成若干个子问题来求解,通过记录每个子问题的解,

Redis在C#开发中的应用:如何实现高效的缓存更新引言:在Web开发中,缓存是提高系统性能的常用手段之一。而Redis作为一款高性能的Key-Value存储系统,能够提供快速的缓存操作,为我们的应用带来了不少便利。本文将介绍如何在C#开发中使用Redis,实现高效的缓存更新。Redis的安装与配置在开始之前,我们需要先安装Redis并进行相应的配置。你可以

如何实现C#中的图像压缩算法摘要:图像压缩是图像处理领域中的一个重要研究方向,本文将介绍在C#中实现图像压缩的算法,并给出相应的代码示例。引言:随着数字图像的广泛应用,图像压缩成为了图像处理中的重要环节。压缩能够减小存储空间和传输带宽,并能提高图像处理的效率。在C#语言中,我们可以通过使用各种图像压缩算法来实现对图像的压缩。本文将介绍两种常见的图像压缩算法:

C#开发中如何处理跨域请求和安全性问题在现代的网络应用开发中,跨域请求和安全性问题是开发人员经常面临的挑战。为了提供更好的用户体验和功能,应用程序经常需要与其他域或服务器进行交互。然而,浏览器的同源策略导致了这些跨域请求被阻止,因此需要采取一些措施来处理跨域请求。同时,为了保证数据的安全性,开发人员还需要考虑一些安全性问题。本文将探讨C#开发中如何处理跨域请

如何在C#中实现遗传算法引言:遗传算法是一种模拟自然选择和基因遗传机制的优化算法,其主要思想是通过模拟生物进化的过程来搜索最优解。在计算机科学领域,遗传算法被广泛应用于优化问题的解决,例如机器学习、参数优化、组合优化等。本文将介绍如何在C#中实现遗传算法,并提供具体的代码示例。一、遗传算法的基本原理遗传算法通过使用编码表示解空间中的候选解,并利用选择、交叉和


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3汉化版
中文版,非常好用

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境