为什么 C#/.Net在国内的人气远不如国外?

2023-11-08

因为互联网公司是不直接靠技术赚钱的,使用何种技术对实现直接赚钱的业务来说都是次要的,往往是技术惯性决定技术选型。

国内信息技术发展偏科严重,软件行业毁于盗版和缺少政府扶持,互联网行业靠低技术门槛和资本运作吸收了大量社会资源和行业精英,主导了行业的发展。因此,国内软件行业缺失了发展机会,也使得.net平台在一个其擅长的领域缺乏积累。

 

1、在国内技术圈氛围就是很浮躁的,喜欢跟风、喜欢一窝蜂,人家用JAVA,我们就用JAVA;人家用k8s,我们也用k8s;人家用linux,我们也用linux,总之人家的东西比我们家先进,所以我们一定要跟上。拿k8s来说,其实很多传统企业根本没有用,也就是几家互联网大厂对它情有独钟;像Java spring我不能说不好,只能说我不习惯,Java相比C#语言逻辑有点啰嗦, 代码的维护成本并不低,而且你需要雇佣很资深的Java开发人员,薪水自然是水涨船高。其实很多所谓的架构师、IT经理考虑的不是迁移成本、运维成本,而是怎么找点事做,这样才能体现出自己的价值,大体可以总结为四个字“无中生有”。

2、.Net的开发效率相比Java太高了,效率高了自然就拉低了就业率,招的人少嘛!毕竟你用Java10个人能干的活使用.Net招5个人就可以干完了,还不用加班,自然不受待见。

如果回头看看以前的webform,再看看现在的低代码,现在的低代码不是以前.net 玩剩下的吗?很多人说拖控件太快,性能不高,10年前哪有现在的大数据,几个公司有海量的业务量。

 

3、国外.Net名气高,是因为欧美的人力成本高,国内我们人多啊,有一个idea毕竟招一个.Net程序员就可以开干了。

4、当然了,以前.Net是不开源的,代码也是看不到的,这个与微软有关,不多说了,可以去了解下,很多人以前搞.Net 后来就转其他语言了,转JAVA的占多数,.Net转JAVA后黑.Net的人也多,至于为什么,有爱就有恨。

5、其实与.Netcore开源有点晚也有关,市场份额被以JAVA为首的占了去,.Net只剩下传统行业市场的一些份额了,还有就是.Net技术体系更新太快,很多人跟不上自然就被淘汰了,像.Net core现在已经出到6了,java还在使用Jdk为8的版本。TG:li9047

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 C#/.Net在国内的人气远不如国外? 的相关文章

  • 如何为 Jackson 编写一个包罗万象的(反)序列化器

    当您提前知道类型时 编写自定义序列化器非常容易 例如 MyType一个人可以写一个MyTypeSerializer extends StdSerializer
  • .Net Core / 控制台应用程序 / 配置 / XML

    我第一次尝试使用新的 ConfigurationBuilder 和选项模式进入 Net Core 库 这里有很多很好的例子 https docs asp net en latest fundamentals configuration ht
  • 在 Selenium WebDriver 上如何从 Span 标签获取文本

    在 Selenium Webdriver 上 如何从 span 标记检索文本并打印 我需要提取文本UPS Overnight Free HTML代码如下 div id customSelect 3 class select wrapper
  • 使用向量的 merge_sort 在少于 9 个输入的情况下效果很好

    不知何故 我使用向量实现了合并排序 问题是 它可以在少于 9 个输入的情况下正常工作 但在有 9 个或更多输入的情况下 它会执行一些我不明白的操作 如下所示 Input 5 4 3 2 1 6 5 4 3 2 1 9 8 7 6 5 4 3
  • Windows 窗体不会在调试模式下显示

    我最近升级到 VS 2012 我有一组在 VS 2010 中编码的 UI 测试 我试图在 VS 2012 中启动它们 我有一个 Windows 窗体 在开始时显示使用 AssemblyInitialize 属性运行测试 我使用此表单允许用户
  • 编译的表达式树会泄漏吗?

    根据我的理解 JIT 代码在程序运行时永远不会从内存中释放 这是否意味着重复调用 Compile 表达式树上会泄漏内存吗 这意味着仅在静态构造函数中编译表达式树或以其他方式缓存它们 这可能不那么简单 正确的 他们可能是GCed Lambda
  • 线程、进程和 Application.Exit()

    我的应用程序由主消息循环 GUI 和线程 Task Factory 组成 在线程中我调用一些第三方应用程序var p new Process 但是当我调用Application Exit 在消息循环中 我可以看到在线程中启动的进程仍在内存中
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • 如何移动图像(动画)?

    我正在尝试在 x 轴上移动船 还没有键盘 我如何将运动 动画与boat png而不是任何其他图像 public class Mama extends Applet implements Runnable int width height i
  • 将 System.Windows.Forms.Keys 序列转换为 Char

    有没有办法转换由 Keys 枚举表示的击键序列 即System Windows Forms Keys 在一个字符中 例如 Keys Oem4进而Keys A产生 char 它一定存在于 WinAPI 中的某个地方 因为当我在文本框中按下按键
  • AccessViolationException 未处理

    我正在尝试使用史蒂夫 桑德森的博客文章 http blog stevensanderson com 2010 01 28 editing a variable length list aspnet mvc 2 style 为了在我的 ASP
  • Java中获取集合的幂集

    的幂集为 1 2 3 is 2 3 2 3 1 2 1 3 1 2 3 1 假设我有一个Set在爪哇中 Set
  • char指针或char变量的默认值是什么[重复]

    这个问题在这里已经有答案了 下面是我尝试打印 char 变量和指针的默认值 值的代码 但无法在控制台上看到它 它是否有默认值或只是无法读取 ASCII 范围 include
  • 已过时 - OpenCV 的错误模式

    我正在使用 OpenCV 1 进行一些图像处理 并且对 cvSetErrMode 函数 它是 CxCore 的一部分 感到困惑 OpenCV 具有三种错误模式 叶 调用错误处理程序后 程序终止 Parent 程序没有终止 但错误处理程序被调
  • 在 ASP.NET 中将事件冒泡为父级

    我已经说过 ASP NET 中的层次结构 page user control 1 user control 2 control 3 我想要做的是 当控件 3 它可以是任何类型的控件 我一般都想这样做 让用户用它做一些触发回发的事情时 它会向
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • Java 推断泛型类型

    我正在寻找类似的推断捕获泛型类型的概念 类似于以下方法片段 但不是捕获泛型类型的类 public
  • java中如何找到class文件的包

    我正在编写一个使用 class 文件的 java 程序 我希望能够读取文件系统上的 class 文件 使用 InputStream 并确定它所在的包 该 class 文件可能不在一个好的包目录结构中 它可能位于某个随机位置 我怎样才能做到这
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但

随机推荐

  • ELK多个日志文件创建多个项目索引

    一 背景 我的elk架构是filebeat redis logstash elasticsearch kibana 我的想法是 我一台服务器多个程序有多个日志文件 在kibana里面想创建不通项目索引 指定不同日志文件 二 问题及解决思路
  • python环境安装和激活

    开始学习python了 环境的安装对与新手来说就变的比较麻烦 这里就会为大家介绍pycharm和python解释器的安装 python解释器的安装 这里介绍windows安装方式 mac安装方法类似 python解释器下载地址 https
  • STL源码阅读-traits与迭代器

    迭代器模式 提供一种方法 使之能够依序访问容器的各个元素 而又无需暴露容器的内部表述方式 STL设计的中心思想在于将数据容器和算法分离开 容器和算法分开设计 迭代器则是两者之间的胶着剂 一般迭代器的设计与容器细节相关 所以一般交给容器的设计
  • 《Effective C++》 全书内容提炼总结

    个人博客地址 https cxx001 gitee io 本文阅读说明 孔子云 取乎其上 得乎其中 取乎其中 得乎其下 取乎其下 则无所得矣 对于读书求知而言 这句古训教我们去读好书 最好是好书中的上品 经典书 Effective C 就是
  • 通过CSS实现 文字渐变色 的两种方式

    主要实现文字渐变色有两种方式 background 属性 mask 属性 1 background 属性 效果图如下 span 这 span
  • 一个30岁光棍的内心独白

    人已三十开外 至今独赏天籁 好想有个太太 为我洗衣做菜 现实却很无奈 让我继续等待 也因寂寞难耐 谈过几次恋爱 谁知屡战屡败 轻轻松松被踹 其实我也奇怪 为啥总遭淘汰 历尽打击伤害 总算知道大概 嫌我不讲穿戴 嫌我长的不帅 熊猫长的不帅 却
  • 代价函数(Cost Function)

    基本概念 代价函数也被称作平方误差函数 有时也被称为平方误差代价函数 我们之所以要求出误差的平方和 是因为误差平方代价函数 对于大多数问题 特别是回归问题 都是一个合理的选择 还有其他的代价函数也能很好地发挥作用 但是平方误差代价函数可能是
  • 腾讯云服务器开通root用户

    01 开通root用户 sudo passwd root 输入 root 的密码 按Enter 重复输入 root 的密码 按Enter 返回如下信息 即表示 root 密码设置成功 passwd password updated succ
  • 信号完整性之差分对

    差分传输 差分互连方式中 使用两条传输线来传输信号 差分驱动器有两个输出端 这两个输出端同时输出信号 理想情况下两个信号边沿对齐 但是翻转方向相反 如下图所示 两个信号沿着各自的传输线传输 到达接收器时 接收器对两个信号进行差分检测 从两个
  • CodeForces 920C Swap Adjacent Elements

    题目大意 题目链接 给定一个序列 这个序列可以理解为一个1 n的全排列 再给出一个01串 1表示可以将索引i和i 1进行交换 且交换可以发生任意次 0表示不可以 问最后能不能将序列升序排列 题解 几乎 秒杀 因为简单 判断每个索引处的数能不
  • 数据库——关系数据库规范化习题

    对以下的关系模式 分别写出 1 码 主属性 非主属性 2 函数依赖 3 属于第几范式 为什么 4 有什么问题 5 如何分解 分解后能否达到几范式 原问题是否解决 ps 函数依赖的方法 1 先找出码 再写出码函数依赖 码 其他属性 2 再写出
  • 电脑宝马,大量宝马车电脑通病故障检修方法

    车型 宝马X5 X6 N55发动机 故障现象 报电子节气门故障 解决方法 检测那个芯片更换即可 车型 宝马E60 E66 E65 故障现象 天使眼不亮 解决方法 刷此程序即可 故障现象 手刹不好用 报内部故障 解决方法 将此处焊接即可 车型
  • 【git】2、gitlab CICD 模型部署自动化

    文章目录 一 GitLab 二 GitLab CI CD 2 1 gitlab ci yml 2 1 1 基础概念 2 1 2 创建 yml 文件 2 1 3 yml 文件中的关键字 2 2 GitLab Runner 一 GitLab G
  • android configChanges属性

    给对应的Activity配置 android configChanges orientation screenSize 横竖屏切换就不会重新创建Activity 学习到这个属性 是因为一个bug activity上有tablayout vi
  • 界面开发(二)--- NativeWindow

    NativeWindow是 net Framework提供的一个底层的类 微软官方的解释为 NativeWindow Provides a low level encapsulation of a window handle and a w
  • 虚拟机redhat9开机不能进入图形界面解决办法

    在启动时无法进入图形界面 出现错误提示 Markers probed from config file default setting from command line notice II informational WW warning
  • c#面试3(选择题)

    46 下列关于 C 中索引器理解正确的是 c A 索引器的参数必须是两个或两个以上 B 索引器的参数类型必须是整数型 C 索引器没有名字 D 以上皆非 47 以下关于 ref 和 out 的描述哪些项是正确的 多选 ACD A 使用 ref
  • java8的lambda中的map相关操作

    0 入门详解篇 1 史上最简单入门 java8的lambda中的map相关操作 基础及注意事项图文详解 2 java8的lambda中collect接口案例及原理详解 官方文档解读 3 java8 封装lambda泛型工具类之list转为m
  • Java 获取系统时间的三种方式,总结起来

    业务场景中 不乏会需要取到当前系统的时间 做一些判断 比如判断某个执行过程需要花多长时间 然后将时间记录下来 返回给业务查看 或者需要或者一个唯一的值做一些表单单号 那么当前系统时间就是唯一的 可以适用 等等 那下面总结下有哪几种方式来获取
  • 为什么 C#/.Net在国内的人气远不如国外?

    因为互联网公司是不直接靠技术赚钱的 使用何种技术对实现直接赚钱的业务来说都是次要的 往往是技术惯性决定技术选型 国内信息技术发展偏科严重 软件行业毁于盗版和缺少政府扶持 互联网行业靠低技术门槛和资本运作吸收了大量社会资源和行业精英 主导了行